使用Idea开发整合SSM框架的登陆系统(maven项目,附上源码) |
您所在的位置:网站首页 › ssm框架用于什么项目 › 使用Idea开发整合SSM框架的登陆系统(maven项目,附上源码) |
SSM框架即Spring,SpringMVC和Mybatis三种框架,通过这三种框架可以让编程变得更加方便和易于理解。对于三种框架我已经在之前的博客中全部讲到了,现在就用三种框架来做一个简单的登陆系统。 本次系统用到的是maven系统,maven是专门用于构建和管理Java相关项目的工具,具体的使用可以看博客:https://blog.csdn.net/qq_41973594/article/details/100146891 项目的所有源代码已经放到github上,文章末自取 本次项目的结构如下: 第一步:配置文件内容 首先在【pom.xml】文件中声明所有依赖的jar包,这里我把未来有可能会用到的jar包全部放了进来,实际使用按照自己需求做调整: 4.0.0 com.cr SSMTest 1.0-SNAPSHOT war UTF-8 1.8 1.8 5.0.8.RELEASE 2.9.3 org.springframework spring-webmvc ${spring.version} javax.servlet javax.servlet-api 3.1.0 provided javax.servlet jstl 1.2 org.springframework spring-core ${spring.version} org.springframework spring-beans ${spring.version} org.springframework spring-context ${spring.version} org.springframework spring-aspects ${spring.version} org.springframework spring-context-support ${spring.version} org.springframework spring-jdbc ${spring.version} org.springframework spring-tx ${spring.version} mysql mysql-connector-java 5.1.46 org.mybatis mybatis 3.2.6 org.mybatis mybatis-spring 1.3.0 com.github.pagehelper pagehelper 4.1.0 joda-time joda-time 2.9.9 commons-codec commons-codec 1.10 org.slf4j slf4j-api 1.7.12 org.slf4j slf4j-log4j12 1.7.12 log4j log4j 1.2.17 com.fasterxml.jackson.core jackson-databind ${jackson.version} com.fasterxml.jackson.core jackson-annotations ${jackson.version} com.fasterxml.jackson.core jackson-core ${jackson.version} net.sf.json-lib json-lib 2.4 jdk15 org.codehaus.jackson jackson-core-asl 1.9.13 org.codehaus.jackson jackson-mapper-asl 1.9.13 commons-fileupload commons-fileupload 1.3.1 com.mchange c3p0 0.9.2.1 commons-dbcp commons-dbcp 1.2.2 SSMTest maven-clean-plugin 3.0.0 maven-resources-plugin 3.0.2 maven-compiler-plugin 3.7.0 maven-surefire-plugin 2.20.1 maven-war-plugin 3.2.0 maven-install-plugin 2.5.2 maven-deploy-plugin 2.8.2配置【web.xml】,相关解释放在了代码注释中: contextConfigLocation classpath:spring/spring-*.xml log4jRefreshInterval 60000 org.springframework.web.context.ContextLoaderListener org.springframework.web.util.IntrospectorCleanupListener springmvc org.springframework.web.servlet.DispatcherServlet contextConfigLocation classpath:spring/springmvc-servlet.xml 1 true springmvc /配置【Spring-mybatis.xml】,这是Spring框架和mybatis框架的整合配置: 其中jdbc.properties配置如下,请自行修改: # 针对不同的数据库需要修改配置 同时要注意匹配数据库的版本号 mysql.driver=com.mysql.jdbc.Driver mysql.url=jdbc:mysql://localhost:3306/mybatistest mysql.username=root mysql.password=123456 #定义初始连接数 dbcp.initialSize=0 #定义最大连接数 dbcp.maxActive=20 #定义最大空闲 dbcp.maxIdle=20 #定义最小空闲 dbcp.minIdle=1 #定义最长等待时间 dbcp.maxWait=60000配置【springmvc-servlet.xml】: 这次项目实现的是登陆功能,数据库上的设计比较简单,创建User表,表中有username和password两项,创建好数据库后在pojo包下新建【User.java】 public class User { private String username; private String password; //getter and setter }在mapper包下创建【UserMapper.xml】,用于数据库语句的编写 select * from t_user where username = #{username} and password = #{password}在dao层下创建【UserDao.java】接口,通过动态代理的方式实现数据的查询操作: public interface UserDao { User select(User user); }在service包下创建service接口和其实现类,因为要实现登陆功能,因此只需编写获取用户的功能就ok: public interface UserService { User get(User user); }【UserServiceImpl.java】 @Service("userService") public class UserServiceImpl implements UserService { @Resource private UserDao userDao; @Override public User get(User user) { // 通过Mapper的select方法查询用户 return userDao.select(user); } }最后在controller包下编写控制器,如果输入的用户名和密码与数据库中一致,则返回user.jsp,否则还是停留在登陆界面: @Controller public class UserController { // 注入UserService @Resource private UserService userService; @RequestMapping(value = "/login") public String login(User user) { ModelAndView mv = new ModelAndView(); user = userService.get(user); if (user != null) { mv.addObject("user", user); return "user"; } else { return "login"; } } }两个jsp页面代码如下:【login.jsp】 login 用户登录界面 用户名 密码【user.jsp】 User 用户登录成功 欢迎您: ${user.username}配置好tomcat服务器后,启动tomcat服务器,我在tomcat服务器中已经配置了首页为login github:https://github.com/OliverLiy/SSMLogin 项目总结 虽然上面的这个项目实现的功能比较简单,但是也算是把SSM框架开发javaweb的整体流程走了一遍:当接收到请求时,通过在web.xml中的设置,SpringMvc会拦截所有的请求,并通过springmvc.xml的配置文件找到controller包,Controller调用Service服务层的相关代码,其中对数据库的操作写在Dao层中,Mybatis处理数据库相关工作,最终返回视图view呈现给用户。 |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |