JAVA Eclipse使用Maven构建web项目详解(SSM框架)
2016-08-27 15:16
996 查看
tips: 启动项目后,welcome-file的链接即为测试用例
部署maven web项目
Eclipse使用Maven构建web项目详解
pom.xml添加webapp依赖:
配置jdk版本,在build->plugins节点中添加:
整合spring
整合log4j
配置dataSource
Spring整合阿里巴巴开源数据源Druid
“`
* [编程方式取得Spring上下文的Properties]
整合mybatis
mybatis-spring官方文档 - SqlSessionFactoryBean
在此,应完成的有:
1. 事务管理
2. 扫描mapper包
整合mybatis-generator
MyBatis Generator generatorConfig.xml配置详解
mybatis-spring的版本换成1.3.0,否则会报错:
java.lang.AbstractMethodError: org.mybatis.spring.transaction.SpringManagedTransaction.getTimeout()L
用Maven插件生成Mybatis代码
用junit测试一下
Junit测试用例见test下的cn.jxnu.mapper.UserMapperTest
Spring Test+JUnit完美组合
整合springMVC
spring MVC配置详解
一、[编程方式取得Spring上下文的Properties]
在Spring初始化时,可以使用Properties配置器把properties文件装载到Spring的上下文中。
这样在Spring的配置文件中可以用表达式来获得load进来的properties内容,例如:
有时候我们在程序中也需要用到这些配置,那么如何取值,显然不能使用${}方式的。
这时要决定用什么方式来获取properties了,最方便的当然是直接读取文件,此处省略。
如果程序一定要用通过Spring加载的properties,那么我们首先要得到Context了。
1、FileSystemXmlApplicationContext——从指定的目录中加载:
2、ClassPathXmlApplicationContext——从classpath路径加载:
3、参照http://blog.csdn.net/dqatsh/article/details/3469278, 通过web.xml来获取Context。
4、在servlet中获取。
然后可以通过相应的bean去访问需要的properties(spring配置文件中${}方式设置到bean里)的值,这里不记录。
用PropertyPlaceholderConfigurer在加载上下文的时候暴露properties
表明PropertyPlaceholderConfigurer是承担properties读取任务的类。
下面的类继承PropertyPlaceholderConfigurer,通过重写processProperties方法把properties暴露出去了。
这样此类即完成了PropertyPlaceholderConfigurer的任务,同时又提供了上下文properties访问的功能。
于是在Spring配置文件中把PropertyPlaceholderConfigurer改成CustomizedPropertyConfigurer
最后在程序中我们便可以使用CustomizedPropertyConfigurer.getContextProperty()来取得上下文中的properties的值了。
部署maven web项目
Eclipse使用Maven构建web项目详解
pom.xml添加webapp依赖:
<dependency> <groupId>javax.servlet</groupId> <artifactId>javax.servlet-api</artifactId> <version>3.1.0</version> <scope>provided</scope> </dependency> <dependency> <groupId>javax.servlet</groupId> <artifactId>jsp-api</artifactId> <version>2.0</version> <scope>provided</scope> </dependency> <dependency> <groupId>javax.servlet</groupId> <artifactId>jstl</artifactId> <version>1.2</version> <scope>provided</scope> </dependency>
配置jdk版本,在build->plugins节点中添加:
<plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-compiler-plugin</artifactId> <configuration> <source>1.7</source> <target>1.7</target> </configuration> </plugin>
整合spring
整合log4j
配置dataSource
Spring整合阿里巴巴开源数据源Druid
<dependency> <groupId>com.alibaba</groupId> <artifactId>druid</artifactId> <version>1.0.7</version> </dependency>
“`
* [编程方式取得Spring上下文的Properties]
driverClassName=com.mysql.jdbc.Driver url=jdbc:mysql://localhost:3306/ssm?useUnicode=true&characterEncoding=utf-8
整合mybatis
mybatis-spring官方文档 - SqlSessionFactoryBean
在此,应完成的有:
1. 事务管理
2. 扫描mapper包
整合mybatis-generator
MyBatis Generator generatorConfig.xml配置详解
mybatis-spring的版本换成1.3.0,否则会报错:
java.lang.AbstractMethodError: org.mybatis.spring.transaction.SpringManagedTransaction.getTimeout()L
用Maven插件生成Mybatis代码
用junit测试一下
Junit测试用例见test下的cn.jxnu.mapper.UserMapperTest
Spring Test+JUnit完美组合
整合springMVC
spring MVC配置详解
一、[编程方式取得Spring上下文的Properties]
在Spring初始化时,可以使用Properties配置器把properties文件装载到Spring的上下文中。
xmlns:context="http://www.springframework.org/schema/context" xsi:schemaLocation=“http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.0.xsd” <context:property-placeholder location="classpath:dataSource.properties" />
这样在Spring的配置文件中可以用表达式来获得load进来的properties内容,例如:
<property name="url" value="${url}" /> <property name="username" value="${username}" /> <property name="password" value="${password}" />
有时候我们在程序中也需要用到这些配置,那么如何取值,显然不能使用${}方式的。
这时要决定用什么方式来获取properties了,最方便的当然是直接读取文件,此处省略。
如果程序一定要用通过Spring加载的properties,那么我们首先要得到Context了。
1、FileSystemXmlApplicationContext——从指定的目录中加载:
ApplicationContext context = new FileSystemXmlApplicationContext("applicationContext.xml");
2、ClassPathXmlApplicationContext——从classpath路径加载:
ApplicationContext context = new ClassPathXmlApplicationContext("applicationContext.xml");
3、参照http://blog.csdn.net/dqatsh/article/details/3469278, 通过web.xml来获取Context。
4、在servlet中获取。
ServletContext servletContext = servlet.getServletContext(); WebApplicationContext wac = WebApplicationContextUtils.getRequiredWebApplicationContext(servletContext);
然后可以通过相应的bean去访问需要的properties(spring配置文件中${}方式设置到bean里)的值,这里不记录。
用PropertyPlaceholderConfigurer在加载上下文的时候暴露properties
<bean id="configBean" class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer"> <property name="location"> <value>hello.properties</value> </property> </bean>
表明PropertyPlaceholderConfigurer是承担properties读取任务的类。
下面的类继承PropertyPlaceholderConfigurer,通过重写processProperties方法把properties暴露出去了。
import java.util.HashMap; import java.util.Map; import java.util.Properties; import org.springframework.beans.BeansException; import org.springframework.beans.factory.config.ConfigurableListableBeanFactory; import org.springframework.beans.factory.config.PropertyPlaceholderConfigurer; public class CustomizedPropertyConfigurer extends PropertyPlaceholderConfigurer { private static Map<String, Object> ctxPropertiesMap; @Override protected void processProperties(ConfigurableListableBeanFactory beanFactory, Properties props)throws BeansException { super.processProperties(beanFactory, props); //load properties to ctxPropertiesMap ctxPropertiesMap = new HashMap<String, Object>(); for (Object key : props.keySet()) { String keyStr = key.toString(); String value = props.getProperty(keyStr); ctxPropertiesMap.put(keyStr, value); } } //static method for accessing context properties public static Object getContextProperty(String name) { return ctxPropertiesMap.get(name); } }
这样此类即完成了PropertyPlaceholderConfigurer的任务,同时又提供了上下文properties访问的功能。
于是在Spring配置文件中把PropertyPlaceholderConfigurer改成CustomizedPropertyConfigurer
<!-- use customized properties configurer to expose properties to program --> <bean id="configBean" class="com.payment.taobaoNavigator.util.CustomizedPropertyConfigurer"> <property name="location" value="classpath:dataSource.properties" /> </bean>
最后在程序中我们便可以使用CustomizedPropertyConfigurer.getContextProperty()来取得上下文中的properties的值了。
相关文章推荐
- JAVA Eclipse使用Maven构建web项目详解(SSM框架)
- JAVA Eclipse使用Maven构建web项目详解(SSM框架)
- 【SSM】Eclipse使用Maven创建Web项目+整合SSM框架(这个666)
- Maven-EclipseEE使用Maven构建Java web项目从0到1
- 【SSM】Eclipse使用Maven创建Web项目+整合SSM框架
- 【SSM】Eclipse使用Maven创建Web项目+整合SSM框架
- Eclipse使用Maven构建web项目详解
- 【SSM】Eclipse使用Maven创建Web项目+整合SSM框架
- Eclipse使用Maven创建Web项目+整合SSM框架
- Eclipse使用Maven创建Web项目+整合SSM框架
- 【SSM】Eclipse使用Maven创建Web项目+整合SSM框架
- 在Eclipse中使用maven构建JavaWeb项目
- Eclipse使用Maven构建web项目详解
- JavaWeb之Eclipse中使用Maven构建SpringMVC项目
- 【SSM】Eclipse使用Maven创建Web项目+整合SSM框架
- eclipse开发java的web项目时使用SSM框架的方法
- eclipse开发java的web项目时使用SSM框架的方法
- 【SSM】Eclipse使用Maven创建Web项目+整合SSM框架
- Maven构建SSM框架JavaWeb项目pom.xml文件整理
- 使用Maven构建SSM架构的JavaWeb项目的过程笔记(一)