Java课程设计:基于tomcat+jsp+sqlserver的javaweb计算机配件报价系统

ops/2024/12/26 17:30:54/

一、项目介绍

前台功能模块:系统首页、我的信息、留言板、用户登陆、公告以及日历模块

后台功能模块:修改个人信息、管理员管理、注册用户管理、类别信息管理、类别信息添加、散件信息管理、散件信息添加、公告信息管理、公告信息添加

二、项目技术栈

tomcat+jsp+sqlserver

三、核心代码

登录功能

java">public class loginService
{public String login(String userName,String userPw,int userType){System.out.println("userType"+userType);try{Thread.sleep(700);} catch (InterruptedException e){// TODO Auto-generated catch blocke.printStackTrace();}String result="no";if(userType==0)//系统管理员登陆{String sql="select * from t_admin where userName=? and userPw=?";Object[] params={userName,userPw};DB mydb=new DB();mydb.doPstm(sql, params);try {ResultSet rs=mydb.getRs();boolean mark=(rs==null||!rs.next()?false:true);if(mark==false){result="no";}else{result="yes";TAdmin admin=new TAdmin();admin.setUserId(rs.getInt("userId"));admin.setUserName(rs.getString("userName"));admin.setUserPw(rs.getString("userPw"));WebContext ctx = WebContextFactory.get(); HttpSession session=ctx.getSession(); session.setAttribute("userType", 0);session.setAttribute("admin", admin);}rs.close();} catch (SQLException e){System.out.println("登录失败!");e.printStackTrace();}finally{mydb.closed();}}if(userType==1){String sql="select * from t_user where del='no' and loginname=? and loginpw=?";Object[] params={userName,userPw};DB mydb=new DB();mydb.doPstm(sql, params);try {ResultSet rs=mydb.getRs();boolean mark=(rs==null||!rs.next()?false:true);if(mark==false){result="no";}else{result="yes";Tuser user=new Tuser();user.setId(rs.getString("id"));user.setLoginname(rs.getString("loginname"));user.setLoginpw(rs.getString("loginpw"));user.setLoginpw(rs.getString("loginpw"));user.setName(rs.getString("name"));user.setSex(rs.getString("sex"));user.setAge(rs.getString("age"));user.setAddress(rs.getString("address"));user.setTel(rs.getString("tel"));user.setEmail(rs.getString("email"));user.setQq(rs.getString("qq"));WebContext ctx = WebContextFactory.get(); HttpSession session=ctx.getSession(); session.setAttribute("userType", 1);session.setAttribute("user", user);}rs.close();} catch (SQLException e){System.out.println("登录失败!");e.printStackTrace();}finally{mydb.closed();}}if(userType==2){}return result;}public String adminPwEdit(String userPwNew){System.out.println("DDDD");try {Thread.sleep(700);} catch (InterruptedException e){// TODO Auto-generated catch blocke.printStackTrace();}WebContext ctx = WebContextFactory.get(); HttpSession session=ctx.getSession(); TAdmin admin=(TAdmin)session.getAttribute("admin");String sql="update t_admin set userPw=? where userId=?";Object[] params={userPwNew,admin.getUserId()};DB mydb=new DB();mydb.doPstm(sql, params);return "yes";}public List catelogAll(){try{Thread.sleep(700);} catch (InterruptedException e){// TODO Auto-generated catch blocke.printStackTrace();}List catelogList=new ArrayList();String sql="select * from t_catelog where del='no'";Object[] params={};DB mydb=new DB();try{mydb.doPstm(sql, params);ResultSet rs=mydb.getRs();while(rs.next()){Tcatelog catelog=new Tcatelog();catelog.setId(rs.getInt("id"));catelog.setName(rs.getString("name"));catelog.setJieshao(rs.getString("jieshao"));catelogList.add(catelog);}rs.close();}catch(Exception e){e.printStackTrace();}mydb.closed();System.out.println(catelogList.size()+"^^");return catelogList;}
}

登录servlet层

java">
public class admin_servlet extends HttpServlet
{public void service(HttpServletRequest req,HttpServletResponse res)throws ServletException, IOException {String type=req.getParameter("type");if(type.endsWith("adminMana")){adminMana(req, res);}if(type.endsWith("adminAdd")){adminAdd(req, res);}if(type.endsWith("adminDel")){adminDel(req, res);}}public void adminMana(HttpServletRequest req,HttpServletResponse res) throws ServletException, IOException{List adminList=new ArrayList();String sql="select * from t_admin";Object[] params={};DB mydb=new DB();try{mydb.doPstm(sql, params);ResultSet rs=mydb.getRs();while(rs.next()){TAdmin admin=new TAdmin();admin.setUserId(rs.getInt("userId"));admin.setUserName(rs.getString("userName"));admin.setUserPw(rs.getString("userPw"));adminList.add(admin);}rs.close();}catch(Exception e){e.printStackTrace();}mydb.closed();req.setAttribute("adminList", adminList);req.getRequestDispatcher("admin/admin/adminMana.jsp").forward(req, res);}public void adminAdd(HttpServletRequest req,HttpServletResponse res){String userName=req.getParameter("userName");String userPw=req.getParameter("userPw");String sql="insert into t_admin values(?,?)";Object[] params={userName,userPw};DB mydb=new DB();mydb.doPstm(sql, params);mydb.closed();req.setAttribute("message", "操作成功");req.setAttribute("path", "admin?type=adminMana");String targetURL = "/common/success.jsp";dispatch(targetURL, req, res);}public void adminDel(HttpServletRequest req,HttpServletResponse res){System.out.println(req.getParameter("userId")+"**");String sql="delete from t_admin where userId="+Integer.parseInt(req.getParameter("userId"));Object[] params={};DB mydb=new DB();mydb.doPstm(sql, params);mydb.closed();req.setAttribute("message", "操作成功");req.setAttribute("path", "admin?type=adminMana");String targetURL = "/common/success.jsp";dispatch(targetURL, req, res);}public void dispatch(String targetURI,HttpServletRequest request,HttpServletResponse response) {RequestDispatcher dispatch = getServletContext().getRequestDispatcher(targetURI);try {dispatch.forward(request, response);return;} catch (ServletException e) {e.printStackTrace();} catch (IOException e) {e.printStackTrace();}}public void init(ServletConfig config) throws ServletException {super.init(config);}public void destroy() {}
}

数据库功能

java">public class DB {private Connection con;private PreparedStatement pstm;private String user = "sa";private String password = "sa";private String className = "com.microsoft.sqlserver.jdbc.SQLServerDriver";private String url = "jdbc:sqlserver://localhost:1433;databaseName=db_jsjsj";public DB(){try{Class.forName(className);} catch (ClassNotFoundException e){System.out.println("加载数据库驱动失败!");e.printStackTrace();}}/** 创建数据库连接 */public Connection getCon(){try{con = DriverManager.getConnection(url, user, password);} catch (SQLException e){System.out.println("创建数据库连接失败!");con = null;e.printStackTrace();}return con;}public void doPstm(String sql, Object[] params){if (sql != null && !sql.equals("")){if (params == null)params = new Object[0];getCon();if (con != null){try{System.out.println(sql);pstm = con.prepareStatement(sql,ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_READ_ONLY);for (int i = 0; i < params.length; i++){pstm.setObject(i + 1, params[i]);}pstm.execute();} catch (SQLException e){System.out.println("doPstm()方法出错!");e.printStackTrace();}}}}public ResultSet getRs() throws SQLException{return pstm.getResultSet();}public int getCount() throws SQLException{return pstm.getUpdateCount();}public void closed(){try{if (pstm != null)pstm.close();} catch (SQLException e){System.out.println("关闭pstm对象失败!");e.printStackTrace();}try{if (con != null){con.close();}} catch (SQLException e){System.out.println("关闭con对象失败!");e.printStackTrace();}}
}

四、项目展示

主页

在这里插入图片描述

登录

在这里插入图片描述

系统管理员端

在这里插入图片描述

五、源码

因为页面与源码太多了,所以页面与源码只展示了一部分,完整源码已经打包了,点击下面蓝色链接获取!

点我获取源码


http://www.ppmy.cn/ops/145172.html

相关文章

Ubuntu 24使用systemctl配置service自动重启

总体流程和互联网上差不多 &#xff0c;但是Ubuntu 24的 system配置文件位于 /usr/lib/systemd/system/ 网上的文章还停留在/etc/下 让我一顿好找 举个例子 主要是添加这个参数 Restartalways [Unit] DescriptionBuda Website Service Afternetwork.target[Service] Type…

《Java 与 Deeplearning4j:开启深度学习高效训练之旅》

在当今科技飞速发展的时代&#xff0c;深度学习无疑是人工智能领域的一颗璀璨明珠。Java 作为一种广泛应用的编程语言&#xff0c;与 Deeplearning4j 框架的结合&#xff0c;为开发者们开辟了一条在深度学习领域大展身手的新路径。那么&#xff0c;如何在 Java 中高效地使用 De…

从自动驾驶到具身智能漫谈

0. 简介 从作者的眼光来看自动驾驶和具身智能已经是越来越接近了。无论是技术栈以及实现的最终目的。其实都是希望人在环内。这个是古月直播的文字相关的大致梳理。主要会展开聊一聊自动驾驶的变迁以及作为自动驾驶的从业人员要着重关注的一些技术点 1. 自动驾驶的变迁 在自…

linux安装idea

参考原网址&#xff1a;在Linux系统中安装idea教程_idea linux-CSDN博客 1.下载idea Download IntelliJ IDEA – The Leading Java and Kotlin IDE 选择Download&#xff0c;下载正确的文件名&#xff1a;ideaIU-2024.3.1.1.tar.gz 2.安装vim sudo apt install vim 3.解压…

Zettlr(科研笔记) v3.4.1 中文版

Zettlr是款适合写作者和研究人员使用的Markdown编辑器&#xff0c;免费开源&#xff0c;功能简洁&#xff0c;具备Markdown所有基本功能&#xff0c;内置各种运算符&#xff0c;还可以调用计数器&#xff0c;可以完美替代Word和收费的文字处理器。 软件特点 从应用程序中直接管…

RabbitMQ中的Topic模式

在现代分布式系统中&#xff0c;消息队列&#xff08;Message Queue&#xff09;是实现异步通信、解耦系统组件的重要工具。RabbitMQ 是一个广泛使用的开源消息代理&#xff0c;支持多种消息传递模式&#xff0c;其中 Topic 模式 是一种灵活且强大的模式&#xff0c;允许生产者…

基于Jenkins+Docker的自动化部署实践——整合Git与Python脚本实现远程部署

环境说明&#xff1a; Ubuntu&#xff1a;v24.04.1 LTSJekins&#xff1a;v2.491Docker&#xff1a;v27.4.0Gogs&#xff1a;v0.14.0 - 可选。可以选择Github&#xff0c;Gitlab或者Gitea等Git仓库&#xff0c;不限仓库类型1Panel: v1.10.21-lts - 可选。这里主要用于查看和管…

默认接口实现”在 C# 7.3 中不可用。请使用 8.0 或更高的语言版本报错问题

问题 开发环境&#xff1a; C# .netframework4.5.2, Visualstudio2019&#xff0c;定义了如下接口&#xff0c;在接口中定义了一个委托和事件报错&#xff1a;错误 CS8370 功能“默认接口实现”在 C# 7.3 中不可用。请使用 8.0 或更高的语言版本。 public interface I…