java SSM自助快递服务平台myeclipse开发mysql数据库springMVC模式java编程计算机网页设计

一、源码特点
    java SSM自助快递服务平台是一套完善的web设计系统(系统采用SSM框架进行设计开发,spring+springMVC+mybatis),对理解JSP java编程开发语言有帮助,系统具有完整的源代
码和数据库,系统主要采用B/S模式开发。开发环境为TOMCAT7.0,Myeclipse8.5开发,数据库为Mysql5.0,使用java语言开发。

ssm自助快递服务平台


二、功能介绍
(1)用户模块:
1.寄件管理模块:用户可以填写寄件人信息和收件人信息,以及寄发的物品信息和物流信息,以及快递员上门取件的时间;
2.收件管理模块:收件人可以查询物流信息和快递员的基本信息,当收件人收到件后,再次查询之后这条物流信息显示已签收并且可以评价此次送件人员;
3.网点管理:用户可以自己选择所在地然后查询附近有没有相关网点;
4.新闻动态模块:用户能够浏览与网站相关的新闻和公司的公告;
5.时效和资费:用户可以根据始发地、目的地和物品重量来支付费用和查询时效费用是由平台自己计算出的;
6.损失赔偿业务:用户可以申请赔偿,待管理员同意以后可以支付费用。
7.业务咨询:用户可以根据输入自己想要了解业务的关键词来获取业务相关信息。
(2)管理员模块:
1.网点管理:管理员可以增加、修改、删除各个网点的信息;
2.新闻动态模块:管理员能够编辑新闻和公告并发布;
3.快递公司及各下属业务员的管理:管理员可以增加、修改、查询员工所派发的地区范围和员工的基本信息;
4.损失赔偿业务:管理员可以审阅同意用户的赔偿的请求;

数据库设计

[表didian] 地点列属性表格

序号字段名称数据类型长度主键描述
1ddidINTEGER11地点编号
2ddVARCHAR40地点

[表wangdian] 网点列属性表格

序号字段名称数据类型长度主键描述
1wdidINTEGER11网点编号
2wdmcVARCHAR40网点名称
3dzVARCHAR40地址
4szddVARCHAR40所在地点

[表yonghu] 用户列属性表格

序号字段名称数据类型长度主键描述
1yhidINTEGER11用户编号
2yhmVARCHAR40用户名
3mmVARCHAR40密码
4xmVARCHAR40姓名
5lxdhVARCHAR40联系电话
6lxdzVARCHAR40联系地址

[表gly] 管理员列属性表格

序号字段名称数据类型长度主键描述
1glyidINTEGER11管理员编号
2yhmVARCHAR40用户名
3mmVARCHAR40密码
4xmVARCHAR40姓名

[表kdy] 快递员列属性表格

序号字段名称数据类型长度主键描述
1kdyidINTEGER11快递员编号
2yhmVARCHAR40用户名
3mmVARCHAR40密码
4xmVARCHAR40姓名
5lxdhVARCHAR40联系电话
6lxdzVARCHAR40联系地址
7wdVARCHAR40网点

[表xinwen] 新闻列属性表格

序号字段名称数据类型长度主键描述
1xwidINTEGER11新闻编号
2btVARCHAR40标题
3nrVARCHAR40内容
4fbsjVARCHAR40发布时间

[表ywjs] 业务介绍列属性表格

序号字段名称数据类型长度主键描述
1ywjsidINTEGER11业务介绍编号
2btVARCHAR40标题
3nrVARCHAR40内容

代码设计 

	
	@RequestMapping(value="/add")
	public String add(kdy kdy,HttpServletRequest request){
		Map<String,Object> map= new HashMap<String,Object>();
		//String name=(String)request.getParameter("name");

		map.put("kdyid", kdy.getKdyid());//快递员编号

		map.put("yhm", kdy.getYhm());//用户名

		map.put("mm", kdy.getMm());//密码

		map.put("xm", kdy.getXm());//姓名

		map.put("lxdh", kdy.getLxdh());//联系电话

		map.put("lxdz", kdy.getLxdz());//联系地址

		map.put("wd", kdy.getWd());//网点



		String kdyid=(String)kdy.getKdyid();//快递员编号

		String yhm=(String)kdy.getYhm();//用户名

		String mm=(String)kdy.getMm();//密码

		String xm=(String)kdy.getXm();//姓名

		String lxdh=(String)kdy.getLxdh();//联系电话

		String lxdz=(String)kdy.getLxdz();//联系地址

		String wd=(String)kdy.getWd();//网点
		
		
		String sql="select count(1) as num from kdy where yhm='"+yhm+"'";
		ResultSet rs=null;
		DBO db=new DBO();
		int num=0;
		try{
			rs=db.query(sql);
			if(rs.next()){
				
				num=rs.getInt("num");
			}
			if(num>0){
				request.setAttribute("msg", "<script>alert('添加失败、用户名重复');</script>");
			}else{
				
				kdydao.save(map);
				
				
				request.setAttribute("msg", "<script>alert('添加成功');</script>");
			}
		}catch(Exception e){
			e.printStackTrace();
		}
		
	

		System.out.println("addok");
		return "kdy/kdyadd";
	}
	
	/**删除 
	 * 
	 */
	@RequestMapping(value="/del")
	public String  del(Integer id,HttpServletRequest request,Map<String,Object> map){
	//	Map<String,Object> map= new HashMap<String,Object>();
		String a=(String)request.getParameter("keyid");
		id=Integer.parseInt(a);
		request.setAttribute("msg", "<script>alert('删除成功');</script>");
		kdydao.del(id);
		return selectall(null,map,request);
	}
	/**
	 * 修改kdy信息
	 */
	@RequestMapping(value="/update")
	public String update(kdy kdy,HttpServletRequest request,Map<String,Object> map1){
		Map<String,Object> map= new HashMap<String,Object>();
		map.put("kdyid", kdy.getKdyid());//快递员编号

		map.put("yhm", kdy.getYhm());//用户名

		map.put("mm", kdy.getMm());//密码

		map.put("xm", kdy.getXm());//姓名

		map.put("lxdh", kdy.getLxdh());//联系电话

		map.put("lxdz", kdy.getLxdz());//联系地址

		map.put("wd", kdy.getWd());//网点



		String kdyid=(String)kdy.getKdyid();//快递员编号

		String yhm=(String)kdy.getYhm();//用户名

		String mm=(String)kdy.getMm();//密码

		String xm=(String)kdy.getXm();//姓名

		String lxdh=(String)kdy.getLxdh();//联系电话

		String lxdz=(String)kdy.getLxdz();//联系地址

		String wd=(String)kdy.getWd();//网点

		request.setAttribute("msg", "<script>alert('修改成功');</script>");
		kdydao.update(map);
		return selectall(null,map1,request);
	}
	


三、注意事项
    1、管理员账号:admin 密码:admin 数据库配置文件datasource.properties
     2、开发环境为TOMCAT7.0,Myeclipse8.5开发,数据库为Mysql5.0,使用java语言开发。
    3、数据库文件名是jspssmzzkd.sql,系统名称ssmzzkd
    4、系统首页地址:http://127.0.0.1:8080/ssmzzkd/shouye.jsp
 四 系统实现

源码获取 下方联系卡片↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓
 

  • 18
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
中的数据进行增删改查操作,实现一个简单的学生成绩管理系统。 首先需要建立一个学生表和一个成绩表,学生表包括学生的基本信息,成绩表包括学生的各科成绩。 学生表包括以下字段: - 学号 - 姓名 - 性别 - 出生日期 - 入学日期 - 班级 成绩表包括以下字段: - 学号 - 课程名称 - 分数 使用 JAVA 语言和 MySQL 数据库技术,可以使用 JDBC 连接数据库,并通过 SQL 语句实现增删改查操作。SSM 框架可以用于快速搭建 Web 应用程序,实现前后端分离,提高开发效率。 具体实现步骤如下: 1. 建立数据库和表 使用 MySQL Workbench 建立一个数据库,命名为 student_management_system,然后在该数据库中建立两个表:student 和 score。 student 表的建表语句如下: CREATE TABLE `student` ( `id` int(11) NOT NULL AUTO_INCREMENT, `student_no` varchar(20) NOT NULL, `name` varchar(20) NOT NULL, `gender` varchar(10) NOT NULL, `birthday` date NOT NULL, `enrollment_date` date NOT NULL, `class` varchar(20) NOT NULL, PRIMARY KEY (`id`) ) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8; score 表的建表语句如下: CREATE TABLE `score` ( `id` int(11) NOT NULL AUTO_INCREMENT, `student_no` varchar(20) NOT NULL, `course_name` varchar(20) NOT NULL, `score` int(11) NOT NULL, PRIMARY KEY (`id`) ) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8; 2. 导入 JDBC 驱动 在项目中导入 MySQL 的 JDBC 驱动,以便连接数据库。可以从 MySQL 官网下载 MySQL Connector/J 驱动,或者从 Maven 仓库中获取。 3. 编写 DAO 层代码 在项目中编写 DAO 层代码,包括对数据库的增删改查操作。可以使用 JDBC 或者 MyBatis 框架实现。 以 JDBC 为例,DAO 层代码如下: public class StudentDao { private Connection conn; private PreparedStatement pstmt; public StudentDao(Connection conn) { this.conn = conn; } public boolean add(Student student) throws SQLException { String sql = "INSERT INTO student(student_no, name, gender, birthday, enrollment_date, class) VALUES(?,?,?,?,?,?)"; pstmt = conn.prepareStatement(sql); pstmt.setString(1, student.getStudentNo()); pstmt.setString(2, student.getName()); pstmt.setString(3, student.getGender()); pstmt.setDate(4, new java.sql.Date(student.getBirthday().getTime())); pstmt.setDate(5, new java.sql.Date(student.getEnrollmentDate().getTime())); pstmt.setString(6, student.getClassName()); int result = pstmt.executeUpdate(); return result > 0; } public boolean update(Student student) throws SQLException { String sql = "UPDATE student SET name=?, gender=?, birthday=?, enrollment_date=?, class=? WHERE student_no=?"; pstmt = conn.prepareStatement(sql); pstmt.setString(1, student.getName()); pstmt.setString(2, student.getGender()); pstmt.setDate(3, new java.sql.Date(student.getBirthday().getTime())); pstmt.setDate(4, new java.sql.Date(student.getEnrollmentDate().getTime())); pstmt.setString(5, student.getClassName()); pstmt.setString(6, student.getStudentNo()); int result = pstmt.executeUpdate(); return result > 0; } public boolean delete(String studentNo) throws SQLException { String sql = "DELETE FROM student WHERE student_no=?"; pstmt = conn.prepareStatement(sql); pstmt.setString(1, studentNo); int result = pstmt.executeUpdate(); return result > 0; } public Student get(String studentNo) throws SQLException { String sql = "SELECT * FROM student WHERE student_no=?"; pstmt = conn.prepareStatement(sql); pstmt.setString(1, studentNo); ResultSet rs = pstmt.executeQuery(); if (rs.next()) { Student student = new Student(); student.setId(rs.getInt("id")); student.setStudentNo(rs.getString("student_no")); student.setName(rs.getString("name")); student.setGender(rs.getString("gender")); student.setBirthday(rs.getDate("birthday")); student.setEnrollmentDate(rs.getDate("enrollment_date")); student.setClassName(rs.getString("class")); return student; } return null; } public List<Student> list() throws SQLException { List<Student> students = new ArrayList<>(); String sql = "SELECT * FROM student"; pstmt = conn.prepareStatement(sql); ResultSet rs = pstmt.executeQuery(); while (rs.next()) { Student student = new Student(); student.setId(rs.getInt("id")); student.setStudentNo(rs.getString("student_no")); student.setName(rs.getString("name")); student.setGender(rs.getString("gender")); student.setBirthday(rs.getDate("birthday")); student.setEnrollmentDate(rs.getDate("enrollment_date")); student.setClassName(rs.getString("class")); students.add(student); } return students; } } 4. 编写 Service 层代码 在项目中编写 Service 层代码,包括对 DAO 层的调用和业务逻辑处理。可以使用 Spring 框架实现,使用注解方式进行配置。 以 Spring 为例,Service 层代码如下: @Service public class StudentService { @Autowired private StudentDao studentDao; public boolean add(Student student) throws SQLException { return studentDao.add(student); } public boolean update(Student student) throws SQLException { return studentDao.update(student); } public boolean delete(String studentNo) throws SQLException { return studentDao.delete(studentNo); } public Student get(String studentNo) throws SQLException { return studentDao.get(studentNo); } public List<Student> list() throws SQLException { return studentDao.list(); } } 5. 编写 Controller 层代码 在项目中编写 Controller 层代码,使用 Spring MVC 框架实现请求和响应的处理。 以 Spring MVC 为例,Controller 层代码如下: @Controller @RequestMapping("/student") public class StudentController { @Autowired private StudentService studentService; @GetMapping("/list") @ResponseBody public List<Student> list() throws SQLException { return studentService.list(); } @GetMapping("/{studentNo}") @ResponseBody public Student get(@PathVariable String studentNo) throws SQLException { return studentService.get(studentNo); } @PostMapping("/") @ResponseBody public boolean add(@RequestBody Student student) throws SQLException { return studentService.add(student); } @PutMapping("/") @ResponseBody public boolean update(@RequestBody Student student) throws SQLException { return studentService.update(student); } @DeleteMapping("/{studentNo}") @ResponseBody public boolean delete(@PathVariable String studentNo) throws SQLException { return studentService.delete(studentNo); } } 6. 编写前端页面代码 在项目中编写前端页面代码,使用 HTML、CSS 和 JavaScript 实现页面的布局和交互效果。可以使用 Bootstrap 框架和 jQuery 库实现快速开发。 7. 运行项目 在项目中运行 Maven 命令进行打包,然后将打包后的 WAR 文件部署到 Tomcat 服务器上。在浏览器中访问项目的 URL,即可看到学生成绩管理系统的界面。 以上就是利用 JAVA 语言、结合 MySQL 数据库技术、SSM 开发框架,实现一个简单的学生成绩管理系统的详细步骤。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

qq_251836457

你的鼓励 是我最大的动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值