spring+springmvc+mybatis配置
生活随笔
收集整理的這篇文章主要介紹了
spring+springmvc+mybatis配置
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
2019獨角獸企業重金招聘Python工程師標準>>>
<?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"><modelVersion>4.0.0</modelVersion><groupId>com.ssm</groupId><artifactId>com.ssm</artifactId><version>1.0-SNAPSHOT</version><dependencies><dependency><groupId>junit</groupId><artifactId>junit</artifactId><version>4.11</version></dependency><dependency><groupId>org.springframework</groupId><artifactId>spring-web</artifactId><version>3.1.1.RELEASE</version><type>jar</type><scope>compile</scope></dependency><dependency><groupId>org.springframework</groupId><artifactId>spring-webmvc</artifactId><version>3.1.1.RELEASE</version><type>jar</type><scope>compile</scope></dependency><dependency><groupId>org.springframework</groupId><artifactId>spring-orm</artifactId><version>3.1.2.RELEASE</version></dependency><dependency><groupId>mysql</groupId><artifactId>mysql-connector-java</artifactId><version>5.1.21</version></dependency><!-- https://mvnrepository.com/artifact/c3p0/c3p0 --><dependency><groupId>c3p0</groupId><artifactId>c3p0</artifactId><version>0.9.1.2</version></dependency><dependency><groupId>org.mybatis</groupId><artifactId>mybatis-spring</artifactId><version>1.3.0</version></dependency><dependency><groupId>org.mybatis</groupId><artifactId>mybatis</artifactId><version>3.4.0</version></dependency></dependencies> </project>web.xml配置
<?xml version="1.0" encoding="UTF-8"?> <web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd"version="3.1"><!-- 配置spring的配置文件的位置 --><context-param><param-name>contextConfigLocation</param-name><param-value>/WEB-INF/Applicationcontext.xml</param-value></context-param><!-- 配置spring隨web容器啟動時就創建 --><listener><listener-class>org.springframework.web.context.ContextLoaderListener</listener-class></listener><!--configure the setting of springmvcDispatcherServlet and configure the mapping--><servlet><servlet-name>springmvc</servlet-name><servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class><init-param><param-name>contextConfigLocation</param-name><param-value>/WEB-INF/springmvc-servlet.xml</param-value></init-param><!-- <load-on-startup>1</load-on-startup> --></servlet><servlet-mapping><servlet-name>springmvc</servlet-name><url-pattern>/</url-pattern></servlet-mapping></web-app>spring-servlet.xml配置
<?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xmlns:context="http://www.springframework.org/schema/context"xmlns:mvc="http://www.springframework.org/schema/mvc"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"><!-- scan the package and the sub package --><context:component-scan base-package="com.chen"/><!-- don't handle the static resource --><mvc:default-servlet-handler /><!-- if you use annotation you must configure following setting --><mvc:annotation-driven /><!-- configure the InternalResourceViewResolver --><bean class="org.springframework.web.servlet.view.InternalResourceViewResolver"id="internalResourceViewResolver"><!-- 前綴 --><property name="prefix" value="/WEB-INF/view/" /><!-- 后綴 --><property name="suffix" value=".jsp" /></bean> </beans>Applicationcontext.xml配置
<?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans"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"><bean id="dataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource"><!-- 配置數據庫連接基本信息 --><property name="driverClass" value="com.mysql.jdbc.Driver" /><!--- zeroDateTimeBehavior=convertToNull 是將 0000-00-00 0:00:00轉成null 否則會報錯 --><property name="jdbcUrl" value="jdbc:mysql://127.0.0.1:3306/jeesns?zeroDateTimeBehavior=convertToNull&transformedBitIsBoolean=true" /><property name="user" value="root" /><property name="password" value="root" /><!-- 配置初始化大小、最小、最大 --><property name="initialPoolSize" value="3" /><property name="maxPoolSize" value="20" /><property name="minPoolSize" value="1" /><!-- 配置獲取連接等待超時的時間 --><property name="maxIdleTime" value="60000" /></bean><!-- 配置會話工廠SqlSessionFactory --><bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean"><!-- 數據源 --><property name="dataSource" ref="dataSource"></property><!-- mapper.xml文件 --><!-- 如果使用注解,注釋掉下面的配置 ----><property name="mapperLocations" value="classpath*:mappers/**/**.xml"></property></bean><!-- Spring容器中配置mapper掃描器,由于產生的動態代理對象在Spring容器中自動注冊,所以id默認值為mapper接口名(首字母小寫) --><bean class="org.mybatis.spring.mapper.MapperScannerConfigurer"><!-- 指定掃描包的路徑,就是mapper接口的路徑 --><property name="basePackage" value="com.chen.dao"></property><!-- 配置sqlSessionFactoryBeanName,也就是配置會話工廠 --><property name="sqlSessionFactoryBeanName" value="sqlSessionFactory"></property></bean><!-- (事務管理)transaction manager, use JtaTransactionManager for global tx --><bean id="transactionManager"class="org.springframework.jdbc.datasource.DataSourceTransactionManager"><property name="dataSource" ref="dataSource" /></bean></beans>com.chen.bean.Action,dao
package com.chen.bean;public class Action {private int id;private String create_time;private String name;private String log;private String status;private String update_time;public int getId() {return id;}public void setId(int id) {this.id = id;}public String getCreate_time() {return create_time;}public void setCreate_time(String create_time) {this.create_time = create_time;}public String getName() {return name;}public void setName(String name) {this.name = name;}public String getLog() {return log;}public void setLog(String log) {this.log = log;}public String getStatus() {return status;}public void setStatus(String status) {this.status = status;}public String getUpdate_time() {return update_time;}public void setUpdate_time(String update_time) {this.update_time = update_time;}@Overridepublic String toString() {return "Action{" +"id=" + id +", create_time='" + create_time + '\'' +", name='" + name + '\'' +", log='" + log + '\'' +", status='" + status + '\'' +", update_time='" + update_time + '\'' +'}';} } package com.chen.dao;import com.chen.bean.Action; import org.springframework.stereotype.Repository;@Repository public interface ActionDao {Action findActionById(Integer id); }mappers/actionMapper.xml
<?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"><!-- namespace:UserMapper.java的全限定名 --> <mapper namespace="com.chen.dao.ActionDao"><!--id是UserMapper.java接口中方法名,parameterTyep:UserMapper.java接口中方法的參數類型,resultType:方法的返回值類型--><select id="findActionById" parameterType="Integer" resultType="com.chen.bean.Action">SELECT * from tbl_action where id=#{id}</select> </mapper>使用注解操作
package com.chen.dao;import com.chen.bean.Action; import org.apache.ibatis.annotations.InsertProvider; import org.apache.ibatis.annotations.Param; import org.apache.ibatis.annotations.Select; import org.springframework.stereotype.Repository;import java.util.List; import java.util.Map;@Repository public interface ActionDao {<!----- 直接查詢 ---->@Select("select * from tbl_action where id>#{id}")List<Action> findActionById(@Param("id") Integer id);<!---- 用構造器 --->@InsertProvider(type = com.chen.dao.ActionSqlProvider.class,method = "insertAction")int insert(Action a);}查詢構造器?ActionSqlProvider
package com.chen.dao;import com.chen.bean.Action; import org.apache.ibatis.jdbc.SQL;public class ActionSqlProvider {public String insertAction(final Action action){return new SQL(){{INSERT_INTO("tbl_action");if(action.getName() != null){VALUES("name","#{name}");}if(action.getCreate_time() != null){VALUES("create_time","#{create_time}");}if(action.getLog() != null){VALUES("log","#{log}");}if(action.getStatus() != null){VALUES("status","#{status}");}if(action.getUpdate_time() != null){VALUES("update_time","#{update_time}");}}}.toString();} }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轉載于:https://my.oschina.net/u/2528821/blog/1538356
總結
以上是生活随笔為你收集整理的spring+springmvc+mybatis配置的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: [转载]带你玩转Visual Studi
- 下一篇: 请尽快升级到 Windows Vista