第一步,使用maven创建一个简单的project。
这里取名为maven-demo,工程目录结构如下图:
pom.xml 配置文件如下:
<?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.shell.maven.demo</groupId> <artifactId>maven-demo</artifactId> <version>1.0.0-SNAPSHOT</version> <name>maven-demo</name> <url>http://maven.apache.org</url> <!-- 指定私服 --> <repositories> <repository> <id>myRepo</id> <name>myRepo Repository</name> <url>http://maven.shell.com.cn:8081/nexus/content/groups/public/</url> <releases> <enabled>true</enabled> </releases> <snapshots> <enabled>true</enabled> </snapshots> </repository> </repositories> <pluginRepositories> <pluginRepository> <id>myRepo</id> <name>myRepo Repository</name> <url>http://maven.shell.com.cn:8081/nexus/content/groups/public/</url> <releases> <enabled>true</enabled> </releases> <snapshots> <enabled>true</enabled> </snapshots> </pluginRepository> </pluginRepositories> <build> <!-- 指定在jdk1.6环境下编译 --> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-compiler-plugin</artifactId> <version>3.1</version> <configuration> <source>1.6</source> <target>1.6</target> </configuration> </plugin> </plugins> </build> </project>
第二步,添加对Spring等第三方依赖。
pom.xml配置文件修改成如下:
<?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.shell.maven.demo</groupId> <artifactId>maven-demo</artifactId> <version>1.0.0-SNAPSHOT</version> <name>maven-demo</name> <url>http://maven.apache.org</url> <properties> <springframework.version>3.1.0.RELEASE</springframework.version> </properties> <!-- 指定私服 --> <repositories> <repository> <id>myRepo</id> <name>myRepo Repository</name> <url>http://maven.shell.com.cn:8081/nexus/content/groups/public/</url> <releases> <enabled>true</enabled> </releases> <snapshots> <enabled>true</enabled> </snapshots> </repository> </repositories> <pluginRepositories> <pluginRepository> <id>myRepo</id> <name>myRepo Repository</name> <url>http://maven.shell.com.cn:8081/nexus/content/groups/public/</url> <releases> <enabled>true</enabled> </releases> <snapshots> <enabled>true</enabled> </snapshots> </pluginRepository> </pluginRepositories> <build> <!-- 指定在jdk1.6环境下编译 --> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-compiler-plugin</artifactId> <version>3.1</version> <configuration> <source>1.6</source> <target>1.6</target> </configuration> </plugin> </plugins> </build> <dependencies> <!-- spring 有关jar --> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-core</artifactId> <version>${springframework.version}</version> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-context</artifactId> <version>${springframework.version}</version> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-beans</artifactId> <version>${springframework.version}</version> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-web</artifactId> <version>${springframework.version}</version> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-jdbc</artifactId> <version>${springframework.version}</version> </dependency> <!-- oracle 驱动 --> <dependency> <groupId>com.oracle</groupId> <artifactId>ojdbc6</artifactId> <version>11.2.0.3.0</version> </dependency> <!-- 采用dbcp数据源 --> <dependency> <groupId>commons-dbcp</groupId> <artifactId>commons-dbcp</artifactId> <version>1.4</version> </dependency> <!-- comomons jar --> <dependency> <groupId>commons-lang</groupId> <artifactId>commons-lang</artifactId> <version>2.4</version> </dependency> <dependency> <groupId>commons-io</groupId> <artifactId>commons-io</artifactId> <version>2.4</version> </dependency> <dependency> <groupId>commons-logging</groupId> <artifactId>commons-logging</artifactId> <version>1.1.1</version> </dependency> <dependency> <groupId>commons-collections</groupId> <artifactId>commons-collections</artifactId> <version>3.2</version> </dependency> <dependency> <groupId>commons-beanutils</groupId> <artifactId>commons-beanutils</artifactId> <version>1.8.3</version> </dependency> </dependencies> </project>
第三步,在classpath目录下创建spring配置文件applicationContext.xml,同时定义id="dataSource"及id="jdbcTemplate"的bean。
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:jdbc="http://www.springframework.org/schema/jdbc" xmlns:tx="http://www.springframework.org/schema/tx" xmlns:util="http://www.springframework.org/schema/util" xmlns:aop="http://www.springframework.org/schema/aop" xmlns:context="http://www.springframework.org/schema/context" xsi:schemaLocation=" http://www.springframework.org/schema/jdbc http://www.springframework.org/schema/jdbc/spring-jdbc.xsd http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd http://www.springframework.org/schema/util http://www.springframework.org/schema/util/spring-util.xsd http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx.xsd http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context.xsd"> <bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource"> <property name="url" value="${jdbc.url}"/> <property name="driverClassName" value="${jdbc.driverClassName}"/> <property name="username" value="${jdbc.username}"/> <property name="password" value="${jdbc.password}"/> <property name="initialSize" value="1"/> <property name="maxActive" value="2"/> </bean> <bean id="jdbcTemplate" class="org.springframework.jdbc.core.JdbcTemplate"> <property name="dataSource" ref="dataSource"></property> </bean> </beans>
第四步,修改pom.xml配置文件,添加数据库连接相关的属性定义,同时开启maven资源过滤。
pom.xml配置文件修改成如下:
<?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.shell.maven.demo</groupId> <artifactId>maven-demo</artifactId> <version>1.0.0-SNAPSHOT</version> <name>maven-demo</name> <url>http://maven.apache.org</url> <properties> <!-- system property --> <encoding>UTF-8</encoding> <maven.test.skip>true</maven.test.skip> <skipTests>true</skipTests> <springframework.version>3.1.0.RELEASE</springframework.version> <!-- jdbc properties 本地连接的配置 --> <jdbc.url>jdbc:oracle:thin:@localhost:1521:shell</jdbc.url> <jdbc.driverClassName>oracle.jdbc.driver.OracleDriver</jdbc.driverClassName> <jdbc.username>scott</jdbc.username> <jdbc.password>yangxi2010</jdbc.password> </properties> <repositories> <repository> <id>myRepo</id> <name>myRepo Repository</name> <url>http://maven.infinitus.com.cn:8081/nexus/content/groups/public/</url> <releases> <enabled>true</enabled> </releases> <snapshots> <enabled>true</enabled> </snapshots> </repository> </repositories> <pluginRepositories> <pluginRepository> <id>myRepo</id> <name>myRepo Repository</name> <url>http://maven.infinitus.com.cn:8081/nexus/content/groups/public/</url> <releases> <enabled>true</enabled> </releases> <snapshots> <enabled>true</enabled> </snapshots> </pluginRepository> </pluginRepositories> <build> <!-- 对主资源目录开启资源过滤 --> <resources> <resource> <directory>src/main/resources</directory> <filtering>true</filtering> </resource> </resources> <!-- 指定在jdk1.6环境下编译 --> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-compiler-plugin</artifactId> <version>3.1</version> <configuration> <source>1.6</source> <target>1.6</target> </configuration> </plugin> </plugins> </build> <dependencies> <!-- spring 有关jar --> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-core</artifactId> <version>${springframework.version}</version> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-context</artifactId> <version>${springframework.version}</version> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-beans</artifactId> <version>${springframework.version}</version> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-web</artifactId> <version>${springframework.version}</version> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-jdbc</artifactId> <version>${springframework.version}</version> </dependency> <!-- oracle 驱动 --> <dependency> <groupId>com.oracle</groupId> <artifactId>ojdbc6</artifactId> <version>11.2.0.3.0</version> </dependency> <!-- 采用dbcp数据源 --> <dependency> <groupId>commons-dbcp</groupId> <artifactId>commons-dbcp</artifactId> <version>1.4</version> </dependency> <!-- comomons jar --> <dependency> <groupId>commons-lang</groupId> <artifactId>commons-lang</artifactId> <version>2.4</version> </dependency> <dependency> <groupId>commons-io</groupId> <artifactId>commons-io</artifactId> <version>2.4</version> </dependency> <dependency> <groupId>commons-logging</groupId> <artifactId>commons-logging</artifactId> <version>1.1.1</version> </dependency> <dependency> <groupId>commons-collections</groupId> <artifactId>commons-collections</artifactId> <version>3.2</version> </dependency> <dependency> <groupId>commons-beanutils</groupId> <artifactId>commons-beanutils</artifactId> <version>1.8.3</version> </dependency> </dependencies> </project>
第五步,在main方法中启动spring容器,使用jdbcTemplate查询一条数据出来。
本地数据库现在存在一张emp表,表中含有的数据如下图:
现在将empNo为7369的这条记录查询出来并在控制台输出。
main方法代码如下图:
/** * Test.java 2014年6月13日 */ package com.shell.maven.demo; import java.sql.ResultSet; import java.sql.SQLException; import org.springframework.context.ApplicationContext; import org.springframework.context.support.ClassPathXmlApplicationContext; import org.springframework.dao.DataAccessException; import org.springframework.jdbc.core.JdbcTemplate; import org.springframework.jdbc.core.ResultSetExtractor; /** * <p> * <b>Test</b> 是 * </p> * * @since 2014年6月13日 * @author shell * @version $Id$ */ public class Test { /** * @param args */ public static void main(String[] args) { // 启动spring 容器 ApplicationContext applicationContext = new ClassPathXmlApplicationContext("classpath:applicationContext.xml"); JdbcTemplate jdbcTemplate = (JdbcTemplate) applicationContext.getBean("jdbcTemplate"); // 查询数据 String sql = "select empno, ename, job from EMP "; String result = jdbcTemplate.query(sql, new ResultSetExtractor<String>() { public String extractData(ResultSet rs) throws SQLException, DataAccessException { rs.next(); String empNo = rs.getString(1); String eName = rs.getString(2); String job = rs.getString(3); return "empNo:" + empNo + ", eName:" + eName + ", job:" + job; } }); System.out.println(result); } }
第六步,编译maven-demo 工程。
在命令行执行 mvn clean install命令,入下图:
开始执行命令
编译成功结果
第七步,执行main方法,结果入下图:
看到上图蓝色框中的内容,表示数据查询操作成功。
此时我们可以去到classpath目录下查看applicationContext.xml文件的内容,结果如下图:
如上图所示,${jdbc.url}等变量被成功替换了。
maven的这个资源过滤特性可以帮助我们隔离开发环境和生产环境。不过要配合maven的profile配置才好用,
下面在pom.xml增加一个profile配置,用于配置生产环境的数据库连接信息。
第八步,配置生产环境数据库连接信息的profile
pom.xml配置文件增加如下配置:
<profiles> <profile> <id>prod</id> <properties> <!-- jdbc properties 生产连接的配置 --> <jdbc.url>jdbc:oracle:thin:@172.20.70.28:1521:gbst</jdbc.url> <jdbc.driverClassName>oracle.jdbc.driver.OracleDriver</jdbc.driverClassName> <jdbc.username>CBSPROD2</jdbc.username> <jdbc.password>CBSPROD2</jdbc.password> </properties> </profile> </profiles>重启编译后再看编译后的applicationContext.xml文件。(不过这时编译的命令要变一下,具体见第九步操作)
相关推荐
Maven权威指南 Authors Tim O'Brien (Sonatype, Inc.) , John Casey (Sonatype, Inc.) , Brian Fox (Sonatype, Inc.) , Bruce Snyder () , Jason Van Zyl (Sonatype, Inc.) , Juven Xu () Abstract Maven权威指南...
lotaris-dbunit-maven-plugin 用于创建/删除域、部署应用程序和管理资源的插件。用法将以下依赖项放入您的 pom.xml < plugin>< groupId>...
- Java源代码:7个.java文件,包含了Redis实验性应用的实现逻辑,如布隆过滤器和限流算法等。 - 配置文件:2个.properties文件,用于配置应用参数和Redis连接设置。 - Lua脚本:2个.lua文件,利用Redis的脚本能力...
在项目文件夹中创建 maven 资源过滤文件(如 filter.properties): #evernote server , could be 'SANDBOX', 'EVERNOTE' OR 'YINXIANG' evernote.endpoint= SANDBOX # your evernote oauth key evernote.oauth....
2. 降低成本:系统可以减少人力资源和物质资源的浪费,使企业在生产和管理上节约成本,提高企业效益。 3. 提高数据准确性:系统可以自动化管理和处理数据,减少了人工操作中的错误和遗漏,从而提高了数据的准确性和...
此基于协同过滤算法的图书推荐系统的部署与应用,将对首页、个人中心、用户管理、书籍管理、书籍分类管理、热门图书管理、我的收藏管理、系统管理、订单管理等功能进行管理 环境说明: 开发语言:Java 框架:ssm ...
10.1.1.Maven安装 10.1.2.Gradle安装 10.2.安装Spring Boot CLI 10.2.1.手动安装 10.2.2.使用SDKMAN安装! 10.2.3.OSX Homebrew安装 10.2.4.MacPorts安装 10.2.5.命令行完成 10.2.6.Windows ...
资源跟踪器过滤器一般特征该工具是一个Web筛选器,允许在标准输出上跟踪所使用的所有资源。 与Java 5版本兼容。 易于使用,只需在您的应用程序中添加依赖项即可。 从Servlet 3开始,不再需要在部署描述符(web.xml)...
6.6.1 应用过滤器 6.6.2 过滤器的类型 6.6.3 过滤器的功能 6.7 Ajax 6.7.1 用Prototype实现Ajax 6.7.1.1 异步链接 6.7.1.2 更新内容 6.7.1.3 异步表单提交 6.7.1.4 Ajax事件 6.7.2 用Dojo实现Ajax 6.7.3 用GWT实现...
实现跨源资源共享 (CORS) 的可配置过滤器和操作构建器。 请参阅完整的。 请参阅。 设置 play-cors 是为 Play 2.3.x 以及 Scala 2.10.x 和 2.11.x 构建的。 Bintray 提供了二进制版本。 如果您使用的是 SBT,只需...
maven. 自动化代码管理 svn cvs github 自动化测试 loadrunner hudson. 自动化安全测试 自动化部署 自动化报警 自动化失效转移 自动化失效恢复 自动化降级 自动...
你可以从这里访问演示应用程序 使用的技术 Spring Boot Thymeleaf JPA Hibernate Maven Capabilities 用户可以使用wysiwyg(这是一个真正的术语:'))编辑器编写故事。 故事有几个类别,如工程、洞察力、教程,而且...
它可以帮助您保持静态资源(js 和 css),在(使用简单的过滤器)或(使用 maven 插件)合并和缩小它们,并且有您可能会觉得有用在处理网络资源时。入门为了开始使用 wro4j,您只需执行 3 个简单的步骤。第 1 步:...
实体及其支持结构(DAO,存储库,服务,REST资源,单元测试,固定装置,模型等) 快速生成跨多个类别的通用设计模式 这不是已经用Maven原型完成了吗? 是的,但是我觉得它们充其量很麻烦。 这个简单的脚手架系统...
避免与其他servlet过滤器交互 25.15。削减小班级和方法 25.16。争论“坏文档” 25.17。摘要 Wicket 8.x参考指南 https://ci.apache.org/projects/wicket/guide/8.x/single.html 5/185 26.1。页面存储 26.2。标记解析...
除其他原因外,这对于需要应用IP / ASN过滤来访问资源的应用程序很有用-例如,阻止来自某些国家/地区的用户。 它是如何工作的 该库解析所有遵循的数据库。 因此,它确保如果IP或ASN由RIR(例如APNIC等)发布,则IP2...
弹簧CORS过滤器 一个简单的OncePerRequestFilter实现,可以为HTTP响应添加CORS相关标头。 入门 包括JAR 包括JAR文件作为对项目的依赖项。 它可以通过Maven Central获得。 玛文 <groupId>io.sprucehill ...
a.2把spring添加为一个maven2依赖项 a.3spring与ant a.4spring与log4j 附录b用(和不用)spring进行测试 b.1测试简介 b.1.1理解不同类型的测试 b.1.2使用junit b.1.3spring在测试中的角色 b.2单元测试...
7.4.1 代理Spring Security的过滤器 7.4.2 处理安全上下文 7.4.3 提示用户登录 7.4.4 处理安全例外 7.4.5 强制Web安全性 7.4.6 确保一个安全的通道 7.5 视图层安全 7.5.1 有条件地渲染内容 7.5.2 显示用户...