作者:mobiledu2502858723 | 来源:互联网 | 2023-10-11 13:53
这期内容当中小编将会给大家带来有关如何在maven项目中使用ssm框架,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。
1.1、Spring
Spring是一个开源框架,Spring是于2003 年兴起的一个轻量级的Java 开发框架,由Rod Johnson 在其著作Expert One-On-One J2EE Development and Design中阐述的部分理念和原型衍生而来。它是为了解决企业应用开发的复杂性而创建的。Spring使用基本的JavaBean来完成以前只可能由EJB完成的事情。然而,Spring的用途不仅限于服务器端的开发。从简单性、可测试性和松耦合的角度而言,任何Java应用都可以从Spring中受益。 简单来说,Spring是一个轻量级的控制反转(IoC)和面向切面(AOP)的容器框架。
1.2、SpringMVC
Spring MVC属于SpringFrameWork的后续产品,已经融合在Spring Web Flow里面。Spring MVC 分离了控制器、模型对象、分派器以及处理程序对象的角色,这种分离让它们更容易进行定制。
1.3、MyBatis
MyBatis 本是apache的一个开源项目iBatis, 2010年这个项目由apache software foundation 迁移到了google code,并且改名为MyBatis 。MyBatis是一个基于Java的持久层框架。iBATIS提供的持久层框架包括SQL Maps和Data Access Objects(DAO)MyBatis 消除了几乎所有的JDBC代码和参数的手工设置以及结果集的检索。MyBatis 使用简单的 XML或注解用于配置和原始映射,将接口和 Java 的POJOs(Plain Old Java Objects,普通的 Java对象)映射成数据库中的记录。
第一步: 通过maven建立一个web项目。
第二步: pom文件导入jar包
(1) pom.xml
我把我pom文件整个都拷贝来了,有些初始化就有的东西你要去掉,保留你自己pom生成的那份。
4.0.0
com.test
ssm
war
0.0.1-SNAPSHOT
ssm Maven Webapp
http://maven.apache.org
4.0.2.RELEASE
3.2.6
1.7.7
1.2.17
junit
junit
3.8.1
test
org.springframework
spring-core
${spring.version}
org.springframework
spring-web
${spring.version}
org.springframework
spring-oxm
${spring.version}
org.springframework
spring-tx
${spring.version}
org.springframework
spring-jdbc
${spring.version}
org.springframework
spring-webmvc
${spring.version}
org.springframework
spring-aop
${spring.version}
org.springframework
spring-context-support
${spring.version}
org.springframework
spring-test
${spring.version}
org.mybatis
mybatis
${mybatis.version}
org.mybatis
mybatis-spring
1.2.2
javax
javaee-api
7.0
mysql
mysql-connector-java
5.1.30
commons-dbcp
commons-dbcp
1.2.2
jstl
jstl
1.2
log4j
log4j
${log4j.version}
com.alibaba
fastjson
1.1.41
org.slf4j
slf4j-api
${slf4j.version}
org.slf4j
slf4j-log4j12
${slf4j.version}
org.codehaus.jackson
jackson-mapper-asl
1.9.13
commons-fileupload
commons-fileupload
1.3.1
commons-io
commons-io
2.4
commons-codec
commons-codec
1.9
ssm
第三步: 看整体的项目架构,先说明下我这里还没有有关springMVC的相关东西,因为我先整合sping-mybatis,在测试是否成功,成功在整合springMVC
第四步: 建立model类
public class User {
private int id;
private String name;
private String password;
private String password2;
/*提供set和get方法,toString方法*/
} 第五步: 创建数据库,UserDao接口和mapper映射文件
(1)建立很简单的一张表
(2)UserDao接口
public interface UserDao {
User findUserById(User user);
} (3)UesrMapper.xml
SELECT * FROM USER
AND Name= #{name}
AND password= #{password}
第五步: 创建UserService和UserServiceImpl
(1)UserService
public interface UserService {
public User getUserById(User user);
} (2)UserServiceImpl
import org.springframework.stereotype.Service;
import com.ssm.dao.UserDao;
import com.ssm.model.User;
import com.ssm.service.UserService;
@Service("userService")
public class UserServerImpl implements UserService {
@Resource
private UserDao userDao;
public User getUserById(User user) {
return this.userDao.findUserById(user);
}
} 第六步: 创建jdbc文件和log日志文件
(1)jdbc.properties
jdbc.driver=com.mysql.jdbc.Driver
jdbc.url=jdbc\:mysql\://localhost\:3306/test?useUnicode=true&&characterEncoding=UTF-8
jdbc.username=root
jdbc.password=root (2)log4j.properties
log4j.rootLogger=INFO,Console,File
#定义日志输出目的地为控制台
log4j.appender.COnsole=org.apache.log4j.ConsoleAppender
log4j.appender.Console.Target=System.out
#可以灵活地指定日志输出格式,下面一行是指定具体的格式
log4j.appender.Console.layout = org.apache.log4j.PatternLayout
log4j.appender.Console.layout.COnversionPattern=[%c] - %m%n
#文件大小到达指定尺寸的时候产生一个新的文件
log4j.appender.File = org.apache.log4j.RollingFileAppender
#指定输出目录
log4j.appender.File.File = logs/ssm.log
#定义文件最大大小
log4j.appender.File.MaxFileSize = 10MB
# 输出所以日志,如果换成DEBUG表示输出DEBUG以上级别日志
log4j.appender.File.Threshold = ALL
log4j.appender.File.layout = org.apache.log4j.PatternLayout
log4j.appender.File.layout.ConversionPattern =[%p] [%d{yyyy-MM-dd HH\:mm\:ss}][%c]%m%n 第七步: 整合spring-mybatis.xml
第八步: 建立测试类
经过以上步骤(log4j不配也没影响),我们已经完成了Spring和mybatis的整合,这样我们就可以编写一段测试代码来试试是否成功了。
测试类在src/test/java中建立,如果测试成功,表示Spring和Mybatis已经整合成功了。输出信息使用的是Log4j打印到控制台。
(1)TestMyBatis测试类
package ssm;
import javax.annotation.Resource;
import org.apache.log4j.Logger;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.springframework.test.context.ContextConfiguration;
import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
import com.ssm.model.User;
import com.ssm.service.UserService;
/*让测试运行于Spring测试环境*/
@RunWith(SpringJUnit4ClassRunner.class)
/*用来指定加载的Spring配置文件的位置,会加载默认配置文件*/
@ContextConfiguration(locations = { "classpath:spring-mybatis.xml" })
public class TestMyBatis {
@Resource(name = "userService")
private UserService userService;
@Test
public void test1() {
User user=new User();
user.setName("张三");
user.setPassword("123");
User user1 = userService.getUserById(user);
System.out.println(user1.toString());
}
} 最后!关键看后台输出,也是见证奇迹的时候,如果输出对象那说明你配置整合成功!
那接下来我们开始整合springMVC
第九步: 配置springmvc.xml
text/html;charset=UTF-8
第十步: 配置web.xml文件
这里面对spring-mybatis.xml的引入以及配置的spring-mvc的Servlet就是为了完成SSM整合,之前2框架整合不需要在此处进行任何配置。
Archetype Created Web Application
contextConfigLocation
classpath:spring-mybatis.xml
encodingFilter
org.springframework.web.filter.CharacterEncodingFilter
true
encoding
UTF-8
encodingFilter
/*
org.springframework.web.context.ContextLoaderListener
org.springframework.web.util.IntrospectorCleanupListener
SpringMVC
org.springframework.web.servlet.DispatcherServlet
contextConfigLocation
classpath:springmvc.xml
1
true
SpringMVC
/
/index.jsp
第十一步 最后测试:
(1) 先写login.jsp
<%@ page language="java" cOntentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
用户名:
密码:
界面:
(2)在写UserController
import javax.servlet.http.HttpServletRequest;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import com.ssm.dao.UserDao;
import com.ssm.model.User;
@Controller
public class UserController {
@Resource
private UserDao userDao;
@RequestMapping("/jsp/login")
public String login(HttpServletRequest request){
String username=request.getParameter("username");
String password=request.getParameter("password");
User user=new User();
//根据用户名和学生查询数据库
user.setName(username);
user.setPassword(password);
User users=userDao.findUserById(user);
//如果有学生就说明登录成功
if(users!=null){
return "susscss";
}
//这个jsp我没有写,大家知道就好,你们可以自己写
return "err";
}
} (3)最后susscss.jsp
<%@ page language="java" cOntentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
用户账号密码正确,登录成功
完美!
上述就是小编为大家分享的如何在maven项目中使用ssm框架了,如果刚好有类似的疑惑,不妨参照上述分析进行理解。如果想知道更多相关知识,欢迎关注编程笔记行业资讯频道。