maven整合SSM
1. 先整合MyBatis
导入MyBatis和MySQL的jar依赖
<!--MyBatis-->
<dependency> <groupId>org.mybatis</groupId> <artifactId>mybatis</artifactId> <version>3.4.5</version> </dependency> <!--MySQL--> <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <version>5.1.43</version> </dependency>
1.1 把需要的包建好 comtroller包 dao包 entity包
在entity里面建实体类还有实体类的xml文件
那么问题来了 java核心包里面是不支持xml文件的
那么就要在pom.xml里面加
<build> <finalName>WSAgent</finalName> <resources> <resource> <directory>src/main/java</directory> <includes> <include>**/*.xml</include> </includes> </resource> </resources> </build>
1.2 要写mybatis的xml文件
|
1.3 测试一下看整合好了没有
@Test public void mybatistest(){ try { SqlSessionFactory sqlSessionFactory=new SqlSessionFactoryBuilder().build(Resources.getResourceAsStream("mybatis.xml")); SqlSession sqlSession= sqlSessionFactory.openSession(); Userdao userdao=sqlSession.getMapper(Userdao.class); User user=new User("哈哈"); userdao.adduser(user); sqlSession.commit(); System.out.println(userdao.getall().size()); sqlSession.close(); } catch (IOException e){ e.printStackTrace(); } }
如果可以添加进数据,这样就整合好了MyBatis。
2.下面来整合Spring
2.1导入jar包依赖
<!--引入springmvc和spring--><dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-webmvc</artifactId>
<version>4.3.3.RELEASE</version>
</dependency>
<!--C3p0-->
<dependency>
<groupId>com.mchange</groupId>
<artifactId>c3p0</artifactId>
<version>0.9.5.1</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-jdbc</artifactId>
<version>4.3.10.RELEASE</version>
</dependency>
<dependency>
<groupId>org.mybatis</groupId>
<artifactId>mybatis-spring</artifactId>
<version>1.3.1</version>
</dependency>
2.2 在resoutces下面创建db.properties文件
uname=root upass=tiger url=jdbc:mysql://localhost:3306/test?useUnicode=true&characterEncoding=UTF-8 driver_Class=com.mysql.jdbc.Driver initPoolSize=5 maxPoolSize=20
2.3 在resoutces下面创建applicationContext.xml文件
<?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:context="http://www.springframework.org/schema/context" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context.xsd"> <!--引入db文件--> <context:property-placeholder location="classpath:db.properties"></context:property-placeholder> <bean id="dataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource"> <property name="user" value="${uname}"></property> <property name="password" value="${upass}"></property> <property name="jdbcUrl" value="${url}"></property> <property name="driverClass" value="${driver_Class}"></property> <property name="maxPoolSize" value="${maxPoolSize}"></property> <property name="initialPoolSize" value="${initPoolSize}"></property> </bean> <!--配置sqlsession--> <bean id="sessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean"> <property name="dataSource" ref="dataSource"></property> <property name="configLocation" value="classpath:mybatis.xml"></property> <property name="mapperLocations" value="classpath:com/entity/*.xml"></property> </bean>
配置一个类只有在测试的时候用用就好了
<!--配置一个类--> <bean id="userdao" class="org.mybatis.spring.mapper.MapperFactoryBean"> <property name="sqlSessionFactory" ref="sessionFactory"></property> <property name="mapperInterface" value="com.dao.Userdao"></property> </bean>
<!--配置一个包--> <bean
id="scannerConfigurer"class="org.mybatis.spring.mapper.MapperScannerConfigurer"> <property name="basePackage" value="com.dao"></property> </bean></beans>
这样MyBatis.xml里面的就不需要 可以屏蔽了
2.4 在dao包里面写接口类 写上测试的方法
package com.dao; import com.entity.User; import java.util.List; public interface Userdao { public List<User> getall(); public void adduser(User user); public void deleteuser(User user); public void updateuser(User user); }
2.5 测试类 整合spring是否成功
@Test public void test02(){ ApplicationContext applicationContext=new ClassPathXmlApplicationContext("applicationContext.xml"); Userdao userdao = (Userdao) applicationContext.getBean("userdao"); List<User> getall = userdao.getall(); for (User u : getall) { System.out.println(u.getUname()); } }
3.下面进行最后一步 整合SpringMVC
3.1 等下要用到jackson
<!--引入jackson-->
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
<version>2.9.1</version>
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-core</artifactId>
<version>2.9.1</version>
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-annotations</artifactId>
<version>2.9.1</version>
</dependency>
3.2 写SpringMVC的xml文件
<?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:context="http://www.springframework.org/schema/context" xmlns:mvc="http://www.springframework.org/schema/mvc" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context.xsd http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc.xsd"> <!--配置扫描器--> <context:component-scan base-package="com.controller"></context:component-scan> <!--试图解析器--> <bean class="org.springframework.web.servlet.view.InternalResourceViewResolver"> <!--前缀--> <property name="prefix" value="/"></property> <!--后缀--> <property name="suffix" value=".jsp"></property> </bean> <mvc:annotation-driven></mvc:annotation-driven> </beans>
3.3 在controller里面写上测试的方法
我就写了一个查看所有的方法
@Controller public class Usercontroller { @Autowired private Userdao userdao; @ResponseBody @RequestMapping("getalluser") public List<User> getalluser() { System.out.println("来了"); List<User> users = userdao.getall(); for (User us : users) { System.out.println(us.getUname()); } return users; } }
3.4 在web.xml里面 写
<context-param> <param-name>contextConfigLocation</param-name> <param-value>classpath:applicationContext.xml</param-value> </context-param> <!--监控器--> <listener> <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class> </listener> <servlet> <servlet-name>springMVC</servlet-name> <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class> <init-param> <param-name>contextConfigLocation</param-name> <param-value>classpath:springmvc.xml</param-value> </init-param> </servlet> <servlet-mapping> <servlet-name>springMVC</servlet-name> <url-pattern>*.action</url-pattern> </servlet-mapping>
3.5 在jsp页面
<a href="/getalluser.action">查看</a>
测试如果页面上出现了数据 那就搭好了
分享使人进步