`
苏小驰
  • 浏览: 16991 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

SpringMVC+JDBC快速搭建(使用注解)

 
阅读更多

        这里介绍一下快速搭建SpringMVC,并使用DBHelper操作数据库,Hibernate我是基本不用了,ibatis又比较麻烦(看项目需求吧),没有DBHelper来的自由灵活。

        首先新建一个java web项目,起好名字,建好包结构后。然后加入Spring的支持,myeclispe下邮件增加Spring支持。只需选上默认的Spring 3.0 core libraries 。生成的applicationContext.xml,作为模版文件使用。首先在WEB-INF目录下,新建一个xml文件(可以直接复制applicationContext.xml),我一般叫:项目名-servlet.xml,它的功能主要是使用注解加载所有的类控制器类,以及设置对模型视图名称的解析,和异常处理等等。具体的看注释就可以了。

<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:context="http://www.springframework.org/schema/context"
       xsi:schemaLocation="http://www.springframework.org/schema/beans
           http://www.springframework.org/schema/beans/spring-beans-3.1.xsd
           http://www.springframework.org/schema/context   
           http://www.springframework.org/schema/context/spring-context-3.1.xsd">
    <!-- 自动扫描com.bdqns.web 包下的@Controller标注的类控制器类 -->
    <context:component-scan base-package="com.crt.web"/>
    <!-- 启动Spring MVC的注解功能,完成请求和注解POJO的映射 -->
    <bean
            class="org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter" />
    <bean
            class="org.springframework.web.servlet.mvc.annotation.DefaultAnnotationHandlerMapping" />

    <!-- 对模型视图名称的解析,在请求时模型视图名称添加前后缀 -->
    <bean
            class="org.springframework.web.servlet.view.InternalResourceViewResolver"
            p:prefix="/jsp/" p:suffix=".jsp" />

    <bean id="multipartResolver"
          class="org.springframework.web.multipart.commons.CommonsMultipartResolver"
          p:defaultEncoding="utf-8" />

    <bean id="messageSource"
          class="org.springframework.context.support.ResourceBundleMessageSource"
          p:basename="i18n/messages" />

    <!--WEB异常解析处理-->
    <bean id="exceptionResolver" class="com.crt.crtHandlerExceptionResolver">
        <property name="defaultErrorView">
            <value>fail</value>
        </property>
        <property name="exceptionMappings">
            <props>
                <prop key="java.lang.RuntimeException">fail</prop>
            </props>
        </property>
    </bean>
</beans>  

 然后,在src目录下新建一个项目名.xml文件(可以直接复制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"
       xmlns:context="http://www.springframework.org/schema/context"
       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">
    <!-- 数据访问层配置 -->
    <import resource="classpath:crt-dao.xml" />
    <!--服务层配置 -->
    <import resource="classpath:crt-service.xml" />
</beans>

 在src目录下新建一个项目名-dao.xml文件(可以直接复制applicationContext.xml),它主要负责扫描com.crt.dao包下所有标注@Repository的DAO组件。具体看代码。

<?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:tx="http://www.springframework.org/schema/tx"
       xmlns:context="http://www.springframework.org/schema/context"
       xmlns:p="http://www.springframework.org/schema/p"
       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/tx http://www.springframework.org/schema/tx/spring-tx.xsd">
    <!-- 扫描com.crt.dao包下所有标注@Repository的DAO组件 -->
    <context:component-scan base-package="com.crt.dao"/>
</beans>

  在src目录下新建一个项目名-service.xml文件(可以直接复制applicationContext.xml),它主要负责扫描com.crt.service包下所有标注@Service的服务组件,如果使用缓存也可以在此设置。具体看代码。

<?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:tx="http://www.springframework.org/schema/tx"
	xmlns:aop="http://www.springframework.org/schema/aop"
	xmlns:context="http://www.springframework.org/schema/context"
    xmlns:p="http://www.springframework.org/schema/p"
	xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd
    http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx.xsd
    http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context.xsd
    http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop.xsd">
   <!-- 扫描com.crt.service包下所有标注@Service的服务组件 -->
    <context:component-scan base-package="com.crt.service"/>
	
    <!-- 基于EHCache的系统缓存管理器-->
    <bean id="cacheManager"
          class="org.springframework.cache.ehcache.EhCacheManagerFactoryBean"
          p:configLocation="classpath:ehcache.xml"/>

</beans>

  在src目录下新建一个ehcache.xml文件(可以直接复制applicationContext.xml),进行一些缓存的设置。具体看代码。

<ehcache>

	<!-- Sets the path to the directory where cache .data files are created.
		
		If the path is a Java System Property it is replaced by
		its value in the running VM.
		
		The following properties are translated:
		user.home - User's home directory
		user.dir - User's current working directory
		java.io.tmpdir - Default temp file path -->
	<diskStore path="java.io.tmpdir" />


	<!--Default Cache configuration. These will applied to caches programmatically created through
		the CacheManager.
		
		The following attributes are required:
		
		maxElementsInMemory            - Sets the maximum number of objects that will be created in memory
		eternal                        - Sets whether elements are eternal. If eternal,  timeouts are ignored and the
		element is never expired.
		overflowToDisk                 - Sets whether elements can overflow to disk when the in-memory cache
		has reached the maxInMemory limit.
		
		The following attributes are optional:
		timeToIdleSeconds              - Sets the time to idle for an element before it expires.
		i.e. The maximum amount of time between accesses before an element expires
		Is only used if the element is not eternal.
		Optional attribute. A value of 0 means that an Element can idle for infinity.
		The default value is 0.
		timeToLiveSeconds              - Sets the time to live for an element before it expires.
		i.e. The maximum time between creation time and when an element expires.
		Is only used if the element is not eternal.
		Optional attribute. A value of 0 means that and Element can live for infinity.
		The default value is 0.
		diskPersistent                 - Whether the disk store persists between restarts of the Virtual Machine.
		The default value is false.
		diskExpiryThreadIntervalSeconds- The number of seconds between runs of the disk expiry thread. The default value
		is 120 seconds.
	-->

	<defaultCache maxElementsInMemory="10000" eternal="false"
		overflowToDisk="false" timeToIdleSeconds="0" timeToLiveSeconds="0"
		diskPersistent="false" diskExpiryThreadIntervalSeconds="120" />

	<cache name="fixedRegion" maxElementsInMemory="100" eternal="true" overflowToDisk="false"/>
	<cache name="freqChangeRegion" maxElementsInMemory="5000" eternal="false"
		overflowToDisk="true" timeToIdleSeconds="300" timeToLiveSeconds="1800"/>
	
</ehcache>

 在每个dao类开头上要加上@Repository

@Repository
public class xxxxxxDAO {......}

 在每个serivce类开头上加上@Service

@Service
public class xxxxxxService {......}

 在controller类开头加上

@Controller
@RequestMapping("/xxx")
public class AlarmInfoController {........}

其中,@RequestMapping("/xxx")标识该controller。

在controller类中的每个方法上面加上@RequestMapping("/doxxxmmm")注意其中的xxx要和上面的xxx相同

@RequestMapping("/doxxxmmm")
	//报警监控
public void doxxxmmm(HttpServletRequest request,HttpServletResponse response) throws ParseException {......}

 

举个例子:

url:"<%=basePath%>alarmInfo/doalarmajax.action";这样去找到哪个controller中对应的方法。

最后需要去配置web.xml。

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         version="2.4"
         xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee   http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">
    <description>项目名</description>
    <display-name>项目名</display-name>
    <context-param>
        <param-name>contextConfigLocation</param-name>
        <param-value>classpath:项目名.xml</param-value>
    </context-param>
 <listener>
        <listener- class>org.springframework.web.context.ContextLoaderListener</listener-class>
    </listener>
        <listener>
              <filter>
        <filter-name>encodingFilter</filter-name>
        <filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>
        <init-param>
            <param-name>encoding</param-name>
            <param-value>UTF-8</param-value>
        </init-param>
        <init-param>
            <param-name>forceEncoding</param-name>
            <param-value>true</param-value>
        </init-param>
    </filter>
    <filter-mapping>
        <filter-name>encodingFilter</filter-name>
        <url-pattern>/*</url-pattern>
    </filter-mapping>
    <filter-mapping>
        <filter-name>encodingFilter</filter-name>
        <url-pattern>*.jsp</url-pattern>
    </filter-mapping>
    <servlet>
        <servlet-name>crt</servlet-name>
        <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
        <load-on-startup>3</load-on-startup>
    </servlet>
    <servlet-mapping>
        <servlet-name>项目名</servlet-name>
        <url-pattern>*.action</url-pattern>
    </servlet-mapping>
    <servlet-mapping>
        <servlet-name>default</servlet-name>
        <url-pattern>/static/*</url-pattern>
    </servlet-mapping>
    <welcome-file-list>
        <welcome-file>login.jsp</welcome-file>
    </welcome-file-list>  
</web-app>

springmvc 需要用到的jar包在附件里了。

1
2
分享到:
评论

相关推荐

    springmvc+spring+mybatis开发框架搭建代码,已使用,完美运行。

    MyBatis可以使用简单的XML或注解进行配置和原始映射,将接口和Java的POJOs(Plain Old Java Objects,普通的Java对象)映射成数据库中的记录。 在SSM框架中,Spring MVC负责处理HTTP请求,将请求转发给Spring管理的...

    springmvc+jdbctemplate+mysql(采用注解方式)

    在IT行业中,SpringMVC、JdbcTemplate和MySQL是构建web...通过注解方式,开发者可以快速搭建系统,专注于业务逻辑,而无需过多关注底层配置。这个技术栈的使用能够提升开发效率,同时保持代码的可维护性和可扩展性。

    idea工具创建的Spring+SpringMVC+Hibernate+maven项目

    标题中的"idea工具创建的Spring+SpringMVC+Hibernate+maven项目"指的是使用IntelliJ IDEA这个集成开发环境(IDE)构建的一个Java Web项目,该项目整合了四个关键的技术框架:Spring、SpringMVC、Hibernate以及Maven...

    spring+springmvc+mybatis+shiro框架搭建

    **MyBatis**是一个优秀的持久层框架,它简化了JDBC的繁琐工作,通过XML或注解方式配置SQL和映射,将接口和Java的POJOs(Plain Old Java Objects, 平凡的Java对象)映射成数据库中的记录。MyBatis避免了几乎所有的JDBC...

    easyui+springMVC+mybatis+sqlserver框架搭建模板

    这里我们关注的是一个基于"easyui+springMVC+mybatis+sqlserver"的框架搭建模板,这是一个常见的企业级开发组合,用于快速构建功能丰富的Web应用。下面将详细介绍这个模板中的各个组件以及它们如何协同工作。 1. **...

    SSM(Spring+springmvc+mybatis)项目实例.zip

    而"sql文件"则可能包含了数据库的建表脚本和初始数据,用于在开发环境中快速搭建数据库环境。 通过分析这个项目实例,我们可以学习到如何配置SSM框架,如何编写Controller、Service和DAO层的代码,以及如何设计和...

    SpringMVC完整框架搭建(springMVC+Hibernate)

    在SpringMVC中,Controller通常通过注解如@Controller和@RequestMapping来定义。这些注解简化了配置,使得我们可以直接在方法上声明处理的URL路径。例如: ```java @Controller @RequestMapping("/users") public ...

    SpringMVC+Spring+Mybatis集成开发环境

    SpringMVC、Spring和Mybatis是Java开发中最常用的三大框架,它们共同构成了企业级Web...它能够帮助开发者快速搭建应用,同时保持代码的清晰性和可维护性。掌握这三个框架的集成和使用,是Java开发者的必备技能之一。

    springmvc+mybatis+maven实例可运行带数据库脚本

    在本实例中,提供的数据库脚本可以帮助用户快速搭建与项目配套的数据库环境,便于项目的运行和测试。 【文件名称列表】中的"com-lang"可能是一个包含Java源代码的文件夹,按照Java的包命名规范,"com.lang"可能是...

    基于Springboot+Mybatis+SpringMvc+springsecrity+Redis完整网站后台管理系统.zip

    MyBatis可以使用简单的XML或注解进行配置和原始映射,将接口和Java的POJOs(Plain Old Java Objects,普通的Java对象)映射成数据库中的记录。在本系统中,MyBatis负责数据库操作,提供灵活的数据访问层。 Spring MVC...

    springmvc+mybatis+mysql整合实现列表展示、新增、更新、删除功能

    本项目"springmvc+mybatis+mysql整合实现列表展示、新增、更新、删除功能"旨在提供一个基础的Maven项目模板,帮助开发者快速搭建具备CRUD(Create、Read、Update、Delete)操作的Web应用。 首先,让我们深入理解...

    分布式框架简介SSM组合+ springmvc+mybatis+shiro+restful+bootstrap

    本节主要介绍如何基于SSM(Spring、SpringMVC、MyBatis)框架搭建一个简单的Web应用程序,并实现一个HelloWorld示例。 **1. 导入必要的依赖** - **SpringMVC**: MVC(Model-View-Controller)设计模式的实现之一,...

    SSM框架(IDEA+Spring+SpringMVC+Maven+Mybatis+MySQL).zip

    综合使用这些技术,开发者可以快速搭建一个完整的Java Web应用,实现业务逻辑、数据访问和用户交互。IDEA作为开发环境,提供舒适的工作空间;Maven管理项目依赖,确保所有组件版本一致;Spring作为核心,负责对象...

    spring+springMVC+Mybatis+maven框架

    这篇文章将详细介绍这四个组件及其整合过程,旨在帮助开发者快速搭建一个可运行的Web项目。 **Spring框架**:Spring是Java企业级应用的核心框架,它提供了一个全面的编程和配置模型,简化了Java开发。Spring通过...

    SpringMVC+Hibernate+EasyUI+Spring

    EasyUI使得开发者可以快速地搭建响应式的页面,提高用户体验。在本系统中,EasyUI可能被用于创建管理界面,如数据表格的展示、表单的输入验证以及交互式的操作。 **Spring**作为整体框架的基石,提供了依赖注入(DI...

    spring+springmvc+mybatis等架包

    标题中的"spring+springmvc+mybatis等架包"指的是三个主流的Java开源框架:Spring、Spring MVC和MyBatis的集成包。...开发者可以利用这些库快速搭建一个能够处理Web请求、操作数据库并具有日志记录功能的应用系统。

    Spring+SpringMVC+MyBatis框架

    在SSM框架中,Spring还提供了SpringMVC的集成,以及对数据访问层的支持,如JDBC和ORM框架(如Hibernate、MyBatis)的集成。 **SpringMVC框架** SpringMVC是Spring框架的一部分,专门用于构建Web应用的Model-View-...

    SpringMVC+Spring+Hibernate(SSH)框架搭建之一

    通过这个项目,你可以实际操作一遍SSH框架的搭建,遇到问题时,可参考提供的错误解决办法文档,以便快速定位并解决问题。 总结来说,SSH框架的搭建涉及SpringMVC的请求处理、Spring的依赖注入和事务管理,以及...

    springmvc+spring+mybatis+mysql数据库文件医院系统

    【标题】"SpringMVC+Spring+MyBatis+MySQL数据库文件医院系统"是一个典型的Java Web项目,它采用主流的SSM...项目的直接导入使用,体现了其良好的可移植性和易用性,降低了项目启动的门槛,有助于快速搭建和部署。

Global site tag (gtag.js) - Google Analytics