1、毕业设计方案用户管理系统的设计方案与开发XXXX大学XX学院毕业设计报告书课程名称:软件开发毕业设计题 目: 用户管理系统的设计与开发 系 名:XXXX系 专业班级:XXXX专业XXXX班 姓 名:学 号:指导教师:年月日课程设计任务书学生姓名: 专业班级:指导教师:工作单位:设计题目:用户管理系统的设计与开发初始条件:了解软件工程基本知识,掌握JAVA编程基础,了解基本的软件开发工具。要求完成的主要任务:功能:用户可以注册,然后登陆,有错误提示等。登陆成功以后,会列出所有用户的记录信息。登陆用户可对记录进行增加、修改、删除、查询等操作。技术:jsp+servlet+tomcat6.0+mys
2、ql设计报告撰写格式要求:一、课程设计说明书了解软件工程基本知识。(2掌握JAVA编程基础。(3了解基本的软件开发工具。1.3设计任务(1 设计一个用户管理系统,用户能够注册、登陆,登陆成功后,会列出所有用户的记录信息。2)登录用户能够对记录进行增加、删除、修改,查询操作。1.4开发环境工具Windows XP系统,MyEclipse 7.0,tomcat 6.0,MySQL等开发工具。第2章 概要设计2.1 设计思想本次课程设计通过使用MYSQL,Myeclisp 7.0,Tomcat 6.0等软件,首先设计一个用户管理系统,以达到用户能够注册、登陆,登陆成功后,会列出所有用户的记录信息的目
3、的最后能实现登录用户能够对记录进行增加、删除、修改,查询操作等工作。首先利用Mysql软件创建数据库,命名为db_user;然后,在db_user中创建表,命名为tb_user,在表中创建4个字段:用户编号userId),用户姓名userName),用户密码userPass),用户年龄userAge),并且将用户编号设置为主键。进行数据库连接,最后在Myeclisp 7.0工具中去运行编程结果以达到用户登录进行增加、删除、修改,查询操作。2.2系统功能设计 2.2系统功能图第3章 详细设计3.1创建数据库,在数据库中建立用户信息表:Create database db_userUse db_u
4、serCreate table tb_user,userPass varchar(50,userAge int)3.2创建数据库连接:import java.sql.Connection。import java.sql.DriverManager。import java.sql.SQLException。public class DBConnection private static String driverName = com.mysql.jdbc.Driver。 private static String userName。 private static String userPass。
5、 private static String url = jdbc:mysql:/localhost:3306/db_user。 public static Connection getConnection(String _url, String _userName, String _userPass userName = _userName。userPass = _userPass。url = _url。Connection conn = null。 try Class.forName(driverName。 conn = DriverManager.getConnection(url, u
6、serName, userPass。 catch (ClassNotFoundException e / TODO Auto-generated catch block e.printStackTrace(。 catch (SQLException e / TODO Auto-generated catch block e.printStackTrace(。 return conn。 public static Connection getConnection( return getConnection(url, root, 123456。 public static void closeCo
7、nnection(Connection conn if (conn != null try conn.close(。 catch (SQLException e / TODO Auto-generated catch block e.printStackTrace(。 3.3用户主要功能的实现:import java.sql.Connection。import java.sql.PreparedStatement。import java.sql.ResultSet。import java.sql.SQLException。import java.sql.Statement。import jav
8、a.util.ArrayList。import com.softeem.dto.UserDTO。public class UserDAO private Connection conn。 private Statement st。 private ResultSet rs。 private String sql。 public void add(UserDTO user conn = DBConnection.getConnection(。 try st = conn.createStatement(。 sql = insert into tb_user(userName,userPass,u
9、serAge values( + user.getUserName( + , + user.getUserPass( + , + user.getUserAge( + 。 int m = st.executeUpdate(sql。 if (m != 0 System.out.println(添加成功。 DBConnection.closeConnection(conn。 catch (SQLException e / TODO Auto-generated catch block e.printStackTrace(。 public void update(UserDTO user conn
10、= DBConnection.getConnection(。 try st = conn.createStatement(。 sql = update tb_user set userName= + user.getUserName( + ,userPass= + user.getUserPass( + ,userAge= + user.getUserAge( + where userId= + user.getUserId( + 。 int m = st.executeUpdate(sql。 if (m != 0 System.out.println(修改成功。 catch (SQLExce
11、ption e / TODO Auto-generated catch block e.printStackTrace(。 public void delete(int n conn = DBConnection.getConnection(。 try st = conn.createStatement(。 sql = delete from tb_user where userId= + n + 。 int m = st.executeUpdate(sql。 if (m != 0 System.out.println(删除成功。 catch (SQLException e / TODO Au
12、to-generated catch block e.printStackTrace(。 public ArrayList selectAll( ArrayList list = new ArrayList(。 conn = DBConnection.getConnection(。 try st = conn.createStatement(。 sql = select * from tb_user。 rs = st.executeQuery(sql。 while (rs.next( UserDTO user = new UserDTO(。 user.setUserId(rs.getInt(u
13、serId。 user.setUserName(rs.getString(userName。 user.setUserPass(rs.getString(userPass。 user.setUserAge(rs.getInt(userAge。 list.add(user。 catch (SQLException e e.printStackTrace(。 return list。 public UserDTO selectById(int n UserDTO user = new UserDTO(。 conn = DBConnection.getConnection(。 try st = co
14、nn.createStatement(。 sql = select * from tb_user where userId= + n + 。 rs = st.executeQuery(sql。 while (rs.next( user.setUserId(rs.getInt(userId。 user.setUserName(rs.getString(userName。 user.setUserPass(rs.getString(userPass。 user.setUserAge(rs.getInt(userAge。 catch (SQLException e e.printStackTrace
15、(。 return user。 public ArrayList selectByProperty(String property, String value ArrayList list = new ArrayList(。 conn = DBConnection.getConnection(。 PreparedStatement pst = null。 try if (property.equals( | property = null | value.equals( | value = null sql = select * from tb_user。 pst = conn.prepare
16、Statement(sql。 else sql = select * from tb_user where + property + like ?。 pst = conn.prepareStatement(sql。 pst.setString(1, % + value + %。 System.out.println(sql。 rs = pst.executeQuery(。 while (rs.next( UserDTO user = new UserDTO(。 user.setUserId(rs.getInt(userId。 user.setUserName(rs.getString(user
17、Name。 user.setUserPass(rs.getString(userPass。 user.setUserAge(rs.getInt(userAge。 list.add(user。 catch (SQLException e e.printStackTrace(。 return list。 public boolean checkLoginuser(UserDTO user boolean flag = false。 conn = DBConnection.getConnection(。 try st = conn.createStatement(。 / sql = select *
18、 from tb_user where userName= + / user.getUserName( / + and userPass= + user.getUserPass( + 。 /查询满足userName和userPass条件的记录 sql = select count(* from tb_user where userName= + user.getUserName( + and userPass= + user.getUserPass( + 。 / sql=select userPass from tb_user where userName=+user.getUserName(
19、+。 /执行sql语句 rs = st.executeQuery(sql。/对结果集进行遍历 如果查询的记录条数大于0 则说明 数据库存在该条记录此时改变flag的值 while (rs.next( if (rs.getInt(1 0 flag = true。 catch (SQLException e e.printStackTrace(。 return flag。 3.4测试过程:public class UserDAOTest Test public void testAdd( UserDTO user = new UserDTO(。 user.setUserName(admin。 us
20、er.setUserPass(123456。 user.setUserAge(43。 UserDAO dao = new UserDAO(。 dao.add(user。 Test public void testUpdate( UserDTO user = new UserDTO(。 user.setUserId(1。 user.setUserName(test。 user.setUserPass(1111111。 user.setUserAge(111。 UserDAO dao = new UserDAO(。 dao.update(user。 Test public void delete(
21、 UserDAO dao = new UserDAO(。 dao.delete(1。 Test public void testSelectAll( UserDAO dao = new UserDAO(。 ArrayList list = dao.selectAll(。 for (int i = 0。 i 。 i+ System.out.println(list.get(i.getUserId( + t + list.get(i.getUserName( + t + list.get(i.getUserPass( + t + list.get(i.getUserAge(。 Test publi
22、c void testSelectById( UserDAO dao=new UserDAO(。 UserDTO user=dao.selectById(6。 System.out.println(user.toString(。 Test public void testCheckLoginuser( UserDTO user=new UserDTO(。 user.setUserName(Lucy。 user.setUserPass(123456。 UserDAO dao=new UserDAO(。 boolean flag=dao.checkLoginuser(user。 System.ou
23、t.println(flag。 第4章 设计运行结果与分析4.1 运行结果4.1.1 用户登录界面 运行login.jsp得到的结果如下: 图 3.1.1 用户登陆界面4.1.2 添加用户 点击页面的增加选项,弹出如下窗口,添加新用户,用户名为admin,设置密码,用户年龄。设置完成后,点击增加按钮。 添加用户成功后,显示页面如下: 图3.1.2 增加用户4.1.3 修改用户信息点击页面的“编辑“按钮,修改用户名为”admin “的用户信息,将其用户密码修改为123456。修改页面如下图 图3.1.3 修改用户信息 修改成功后,页面显示如下图 图3.1.3 修改后用户信息4.1.4 删除用户
24、点击“删除”按钮,删除用户姓名为“a”,即删除。4.1.5 查询用户 查询某用户信息,查询结果如图: 图3-7 用户信息 图3.1.5查询结果4.2 结果分析本次课程设计基本达到了任务要求,用户在登录界面登录后,经过运行和调试能够成功的注册、登陆,登陆成功后,会列出所有用户的记录信息。最后登陆对用户信息进行添加,删除,修改以及最后进行查询,都达到了预期的结果,如3.1中设计结果的运行和所得出的视图。同时设计过程中依然存在许多不足,主要是对开发工具的不能熟练掌握和功能的运用,从而导致用户界面不够好,编程和运行时出现了些问题。用开发和java语言来进行编程以及对开发工具的使用得到了添加,删除,修改
25、以及查询最终得到了用户界面基本符合课程设计的要求。第5章 设计体会与小结通过近两个星期的软件开发工具的课程设计,让我学到了很多东西,尤其是让我学会了使用的开发和进一步熟悉和掌握了java语言的编程以及对开发工具的使用。在这次课程设计中,经过指导老师近两个星期的讲解,不断的丰富我们软件开发工具的知识,让我受益匪浅同时也检验了我所学习的知识,重要的是让我在平时中没有理解和掌握的东西有了进一步深入的理解。在设计过程中,我也遇到了很多问题和困难,在与同学们相互探讨,相互学习的过程中让我逐渐掌握了解决这些困难的技巧。我觉得课程设计,主要在于通过理论与实际的结合,提高我们平时课堂中学不到的东西,如何理论联
26、系实际。通过实践可以我意识到了的课堂学习与实际工作学习的差距,平时我们更应该去好好学习去掌握每个知识点才能为我们的实际动手能力打下良好的基础。本次课程设计我深深的感受到平时学习中存在的不足,让我体会深刻,在以后的学习中我们应更加努力。课程设计过程中我的实际能力不好,因此碰到很多问题,通过对问题的解决我的动手能力才慢慢开始熟练起来。只有理论联系实际才能出真知,在今后的学习过程中我将继续努力去熟练掌握我们所学的课堂知识,在实际中的运用过程中才能发挥自如。两个星期的学习让我学到了很多,感受也很深,做任何事都要一步步的熟练掌握从无到有,才能得出想要的结果和成果。今后我将继续好好学习。参考文献1 软件工程方法与实践,窦万峰,机械工业出本社,2018年7月2 数据库原理与应用,夏冰冰,国防工业出版社,2009.123软件工程概论,卫红春,清华大学出
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1