easyui+spring+springmvc+ibatis学习(一)

使用easyui+spring+springmvc+ibatis搭建一个管理系统的项目,效果图如下:



首先,基于创建一个maven工程,转换为web项目,我的项目结构如下:


我使用的是jetty服务器,jetty的配置文件如下:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE Configure PUBLIC "-//Mort Bay Consulting//DTD Configure//EN" "http://jetty.mortbay.org/configure.dtd">
<Configure id="Serve" class="org.mortbay.jetty.Server">
    <Call name="addConnector">
      <Arg>
          <New class="org.mortbay.jetty.nio.SelectChannelConnector">
            <Set name="host"><SystemProperty name="jetty.host" /></Set>
            <Set name="port"><SystemProperty name="jetty.port" default="9090"/></Set>
          </New>
      </Arg>
    </Call>
</Configure>


在pom.xml中引入相关的jar包,web.xml的配置如下:

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
		 xmlns="http://java.sun.com/xml/ns/javaee" 
		 xsi:schemaLocation="http://java.sun.com/xml/ns/javaee 
		 http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" id="WebApp_ID" version="2.5">
  <!-- 应用程序名 -->
  <display-name>easyui</display-name>
  
  <!-- 应用程序描述说明文字 -->
  <description>spring springmvc ibatis easyui</description>
  
  <!-- ServletContext初始化参数 -->
  <context-param>
  	<param-name>contextConfigLocation</param-name>
  	<param-value>classpath:applicationContext.xml</param-value>
  </context-param>
  <context-param>   
    <param-name>log4jConfigLocation</param-name>   
    <param-value>classpath:log4j.properties</param-value>   
  </context-param> 
  
  <!-- 默认起始页面 -->
  <welcome-file-list>
  	<!--welcome-file-list一般情况下只能使用静态网页,如果非要把他配置成SpringMVC的控制器URL就会报错. -->
    <welcome-file>login.jsp</welcome-file>
  </welcome-file-list>
  
  <!-- spring security 过滤器    
  <filter>   
    <filter-name>springSecurityFilterChain</filter-name>   
    <filter-class>org.springframework.web.filter.DelegatingFilterProxy</filter-class>   
  </filter>   
  <filter-mapping>   
    <filter-name>springSecurityFilterChain</filter-name>   
    <url-pattern>/*</url-pattern>   
  </filter-mapping> -->
  
  <!-- 配置监听器,用于初始化 -->
  <listener>
  	<listener-class>org.springframework.web.util.Log4jConfigListener</listener-class>
  </listener>
  <listener>
  	<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
  </listener>
  
  <!--Servlet初始化参数,配置springmvc特性  -->
  <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-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>
  
  <!-- 登陆过滤 -->
  <filter>
  	<filter-name>LoginFilter</filter-name>
  	<filter-class>com.cjb.test.filter.MyLoginFilter</filter-class>
  </filter>
  <filter-mapping>
  	<filter-name>LoginFilter</filter-name>
  	<url-pattern>/*</url-pattern>
  </filter-mapping>
</web-app>


spring的配置文件applicationContext.xml的配置如下:

<?xml version="1.0" encoding="UTF-8"?>
<!-- Spring框架配置文件 -->


<!-- 配置ContextLoaderListener表示,该工程要以spring的方式启动。启动时会默认在/WEB-INF目录下查找applicationContext.xml
作为spring容器的配置文件,这里可以初始化一些bean,如DataSource和iBATIS的集成 -->
<beans xmlns="http://www.springframework.org/schema/beans"  
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"  
    xmlns:mvc="http://www.springframework.org/schema/mvc"  
    xmlns:context="http://www.springframework.org/schema/context"  
    xmlns:aop="http://www.springframework.org/schema/aop"   
    xmlns:tx="http://www.springframework.org/schema/tx"  
    xsi:schemaLocation="  
        http://www.springframework.org/schema/beans   
        http://www.springframework.org/schema/beans/spring-beans-3.0.xsd  
        http://www.springframework.org/schema/mvc   
        http://www.springframework.org/schema/mvc/spring-mvc-3.0.xsd  
        http://www.springframework.org/schema/context   
        http://www.springframework.org/schema/context/spring-context-3.0.xsd  
        http://www.springframework.org/schema/tx  
        http://www.springframework.org/schema/tx/spring-tx-3.0.xsd  
      <span style="white-space:pre">	</span>http://www.springframework.org/schema/aop  
      <span style="white-space:pre">	</span>http://www.springframework.org/schema/aop/spring-aop-3.0.xsd" default-autowire="byName">  


  
   <!-- 自动扫描 所有注解 注册为bean (启动注解)-->   
   <context:component-scan base-package="com.cjb.test">
   <!-- 自动扫描组件,这里要把web下面的 controller去除,他们是在springmvc-servlet.xml中配置的,如果不去除会影响事务管理的。-->  
   <span style="white-space:pre">		</span><context:exclude-filter type="annotation" expression="org.springframework.stereotype.Controller"/>
   </context:component-scan> 
  


<span style="white-space:pre">	</span><!-- DataSource定义 -->
<span style="white-space:pre">	</span><bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource">
<span style="white-space:pre">		</span><property name="driverClassName" value="oracle.jdbc.driver.OracleDriver" />
<span style="white-space:pre">		</span><property name="url" value="jdbc:oracle:thin:@127.0.0.1:1521:XE"/>
<span style="white-space:pre">		</span><property name="username" value="chengjunbo" />
<span style="white-space:pre">		</span><property name="password" value="chengjunbo" />
<span style="white-space:pre">		</span><property name="maxActive" value="50" />
<span style="white-space:pre">		</span><property name="maxIdle" value="5" />
<span style="white-space:pre">		</span><property name="maxWait" value="5000" />
<span style="white-space:pre">		</span><property name="removeAbandoned" value="true" />
<span style="white-space:pre">		</span><property name="removeAbandonedTimeout" value="5" />
<span style="white-space:pre">	</span></bean>


<span style="white-space:pre">	</span><!--  配置事务管理器-->
<span style="white-space:pre">	</span><bean id="transactionManager"
<span style="white-space:pre">		</span>class="org.springframework.jdbc.datasource.DataSourceTransactionManager">
<span style="white-space:pre">		</span><property name="dataSource" ref="dataSource" />
<span style="white-space:pre">	</span></bean>
 
    <!-- 启动spring事务注解,事务注解尽在此 --> 
    <tx:annotation-driven transaction-manager="transactionManager"/>


<span style="white-space:pre">	</span><bean id="transactionTemplate"
<span style="white-space:pre">		</span>class="org.springframework.transaction.support.TransactionTemplate">
<span style="white-space:pre">		</span><property name="transactionManager" ref="transactionManager" />
<span style="white-space:pre">	</span></bean>


<span style="white-space:pre">	</span><!-- 配置SqlMapClient对象 -->
<span style="white-space:pre">	</span><bean id="sqlMapClient" class="org.springframework.orm.ibatis.SqlMapClientFactoryBean">
<span style="white-space:pre">		</span><property name="dataSource" ref="dataSource" />
<span style="white-space:pre">		</span><property name="configLocation" value="classpath:sql-map-config.xml"/>
<span style="white-space:pre">	</span></bean>
    <!--根据sqlMapClien创建一个SqlMapClient模版类-->   
    <bean id="sqlMapClientTemplate" class="org.springframework.orm.ibatis.SqlMapClientTemplate">
    <span style="white-space:pre">	</span><property name="sqlMapClient" ref="sqlMapClient"/>
    </bean>
</beans>

springmvc的配置文件springmvc-servlet.xml的配置如下:

<?xml version="1.0" encoding="UTF-8"?>
<!--springmvc-servlet.xml(Springmvc框架配置文件)该文件是springmvc框架配置文件,也是它的核心文件  -->

<!-- Bean头部 
配置DispatcherServlet表示,该工程将采用springmvc的方式。启动时也会默认在/WEB-INF目录下查找XXX-servlet.xml作为配置文件,
XXX就是DispatcherServlet的名字,该文件中将配置两项重要的mvc特性:
HandlerMapping,负责为DispatcherServlet这个前端控制器的请求查找Controller;
ViewResolver,负责为DispatcherServlet查找ModelAndView的视图解析器
-->
<beans xmlns="http://www.springframework.org/schema/beans"
	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
	xmlns:p="http://www.springframework.org/schema/p" 
	xmlns:mvc="http://www.springframework.org/schema/mvc" 
	xmlns:context="http://www.springframework.org/schema/context"
	xmlns:util="http://www.springframework.org/schema/util"
	xsi:schemaLocation="http://www.springframework.org/schema/beans 
						http://www.springframework.org/schema/beans/spring-beans-3.0.xsd    
						http://www.springframework.org/schema/util
  						http://www.springframework.org/schema/util/spring-util.xsd
             			http://www.springframework.org/schema/context 
             			http://www.springframework.org/schema/context/spring-context-3.0.xsd  
             			http://www.springframework.org/schema/mvc 
             			http://www.springframework.org/schema/mvc/spring-mvc-3.0.xsd"  default-autowire="byName">
	 <!-- default-autowire="byName",约定优于配置,约定优于配置 -->  
	
	<!-- 默认的注解映射的支持 -->  
    <mvc:annotation-driven/>
	
	<!-- 如果当前请求为“/”时,则转发到“/helloworld/index” -->
    <mvc:view-controller path="/" view-name="forward:/login.jsp"/> 
    
	<!-- 自动扫描,完成bean创建和依赖注入   把标记了@Controller注解的类转换为bean--> 
	<context:component-scan base-package="com.cjb.test.web.controller"  use-default-filters="false">
        <context:include-filter type="annotation" expression="org.springframework.stereotype.Controller"/>
    </context:component-scan>

	
	<!-- 启动Spring MVC的注解功能,完成请求和注解POJO的映射 -->  
	<bean class="org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter" >
		<!-- 在Controller的某个方法上加@ResponseBody注解,表示该方法的返回结果直接写入HTTP response body中,返回一个字符串,
		spring mvc中很好的支持了json格式,配置文件中添加json转换器,如果不加这个注解,你是看不到效果的 -->
		<property name="messageConverters">
			<list>
			<bean class="org.springframework.http.converter.json.MappingJacksonHttpMessageConverter">
			</bean></list>
		</property>
	</bean>
	
	<!-- HandlerMapping -->
	<bean class="org.springframework.web.servlet.handler.BeanNameUrlHandlerMapping"/>
	<bean class="org.springframework.web.servlet.mvc.annotation.DefaultAnnotationHandlerMapping"/>

    <!-- 视图解析器 --> 
	<bean id="viewResolver"
		class="org.springframework.web.servlet.view.InternalResourceViewResolver">
		<property name="prefix">
			<value>/</value>
		</property>
		<property name="suffix">
			<value>.jsp</value>
		</property>
	</bean>
	<!--  静态资源映射 EasyUI样式,JS配置  -->
	<mvc:annotation-driven/>
	<mvc:resources location="/jslib/easyui-1.4.3/" mapping="/jslib/easyui-1.4.3/**"/>
	<mvc:resources location="/jslib/css/" mapping="/jslib/css/**"/>
	<mvc:resources location="/jslib/js/" mapping="/jslib/js/**"/>
	<mvc:resources location="/" mapping="/**"/>
	<!-- 当上面要访问的静态资源不包括在上面的配置中时,则根据此配置来访问 -->
    <mvc:default-servlet-handler/>
	
</beans>  


 




  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值