SpringBoot+Mybatis整合jsp项目之EMS(1)

  • 项目所需依赖:(直接导入就可)

org.springframework.boot

spring-boot-starter-parent

2.2.5.RELEASE

org.springframework.boot

spring-boot-starter-web

mysql

mysql-connector-java

8.0.16

org.apache.tomcat.embed

tomcat-embed-jasper

org.mybatis.spring.boot

mybatis-spring-boot-starter

2.1.2

com.alibaba

druid

1.1.12

javax.servlet

jstl

1.2

org.springframework.boot

spring-boot-starter-test

org.springframework.boot

spring-boot-starter-aop

  • 项目的核心配置:application.properties

#内置服务器端口设置

server.port=8080

#项目名设置

server.servlet.context-path=/ems

#配置jsp页面的前后缀

spring.mvc.view.prefix=/

spring.mvc.view.suffix=.jsp

#数据源相关配置 driverClassName url username password

spring.datasource.type=com.alibaba.druid.pool.DruidDataSource

spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver

spring.datasource.url=jdbc:mysql://localhost:3306/ems?useSSL=false&serverTimezone=UTC

spring.datasource.username=root

spring.datasource.password=root

#设置mybatis的mapper文件所在路径 别名

mybatis.mapper-locations=classpath:com/tjcu/mapper/*Mapper.xml

mybatis.type-aliases-package=com.tjcu.entity

#开启jsp页面的热部署

server.servlet.jsp.init-parameters.development=true

  • SpringBoot入口

/**

  • @author 王恒杰

  • @date 2021/11/25 19:15

  • @Description:

*/

@SpringBootApplication

@MapperScan(“com.tjcu.dao”)

public class EmsApplication {

public static void main(String[] args) {

SpringApplication.run(EmsApplication.class,args);

}

}

6.用户模块功能实现

(注:只包含Controller层代码,其余代码去我gitee下载)

(1)验证码生成功能实现:

1.生成随机字符

2.放入session

3.生成图片并响应

/**

  • 用来生成验证码方法

*/

@RequestMapping(“generateImageCode”)

public void generateImageCode(HttpSession session, HttpServletResponse response) throws IOException {

//1.生成随机字符串

String code = VerifyCodeUtils.generateVerifyCode(4);

//2.保存随机字符串到Session中

session.setAttribute(“code”,code);

//3.将随机字符串生成图片

//4.通过response响应图片

response.setContentType(“image/png”);//指定响应类型

ServletOutputStream os = response.getOutputStream();

VerifyCodeUtils.outputImage(80,30,os,code);

}

(2)用户注册功能实现:

1.根据用户输入验证码比较session中验证码是否一致

2.如果一致完成注册,如果不一致直接返回错误

3.完成注册向数据库中保存当前的用户信息

a.保存信息之前判断当前用户名是否存在 如果存在直接返回错误

b.如果当前用户名不存在保存用户信息 保存用户信息给密码进行加密处理

/**

  • 注册

  • @param admin

*/

@RequestMapping(“register”)

public String register(Admin admin){

String password = MD5Utils.md5(admin.getPassword());

admin.setPassword(password);

adminService.register(admin);

return “redirect:/login.jsp”;

}

(3)用户登录功能实现:

1.根据用户输入用户名去数据库中查询是否存在改用户名

2.如果存在,判断密码是否一致 如果不存在,用户名输入错误

3.判断密码根据数据库加密密码与对接收密码进行md5加密之后比较

md5: 只要内容相同 多次计算md5 结果一定是一致

4.保存用户登录标记到Session中

/**

  • 登录

  • @param admin

  • @return

*/

@RequestMapping(“login”)

public String login(Admin admin,String code, HttpServletRequest request){

//1.比较验证是否一致

String sessionCode = request.getSession().getAttribute(“code”).toString();

System.out.println(sessionCode);

System.out.println(code);

if(code.equals(sessionCode)){

String password = MD5Utils.md5(admin.getPassword());

admin.setPassword(password);

Admin admin1 = adminService.login(admin);

System.out.println(admin1);

if(admin1!=null){

request.getSession().setAttribute(“admin”,admin1);

return “redirect:/emp/show”;

}else

{

return “redirect:/login.jsp”;

}

}else {

return “redirect:/login.jsp”;

}

}

7.员工模块功能实现

(注:只包含Controller层代码,其余代码去我gitee下载)

(1)员工列表:

1.在数据库中查询所有员工信息

2.在页面中进行展示

/**

  • 展示员工

  • @return

*/

@RequestMapping(“show”)

public String showEmp(Model model){

//调用业务方法

List emps = empService.showEmp();

//作用域

model.addAttribute(“emps”,emps);

return “emplist”;

}

(2)添加员工:

1.在员工controller中开发一个添加方法

2.接收员工信息

3.将员工信息保存到数据库

4.跳转到员工列表展示数据

分享

这次面试我也做了一些总结,确实还有很多要学的东西。相关面试题也做了整理,可以分享给大家,了解一下面试真题,想进大厂的或者想跳槽的小伙伴不妨好好利用时间来学习。学习的脚步一定不能停止!

薪酬缩水,“裸辞”奋战25天三面美团,交叉面却被吊打,我太难了

Spring Cloud实战

薪酬缩水,“裸辞”奋战25天三面美团,交叉面却被吊打,我太难了

Spring Boot实战

薪酬缩水,“裸辞”奋战25天三面美团,交叉面却被吊打,我太难了

面试题整理(性能优化+微服务+并发编程+开源框架+分布式)

s = empService.showEmp();

//作用域

model.addAttribute(“emps”,emps);

return “emplist”;

}

(2)添加员工:

1.在员工controller中开发一个添加方法

2.接收员工信息

3.将员工信息保存到数据库

4.跳转到员工列表展示数据

分享

这次面试我也做了一些总结,确实还有很多要学的东西。相关面试题也做了整理,可以分享给大家,了解一下面试真题,想进大厂的或者想跳槽的小伙伴不妨好好利用时间来学习。学习的脚步一定不能停止!

[外链图片转存中…(img-XGyYreZD-1714460440475)]

Spring Cloud实战

[外链图片转存中…(img-tNnfH9Kw-1714460440476)]

Spring Boot实战

[外链图片转存中…(img-ppcOvxT0-1714460440476)]

面试题整理(性能优化+微服务+并发编程+开源框架+分布式)

本文已被CODING开源项目:【一线大厂Java面试题解析+核心总结学习笔记+最新讲解视频+实战项目源码】收录

  • 30
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值