一、创建父工程

  1.选择>>"Maven Project"创建Maven工程、并且选择Packaging为 POM。

    创建父工程主要是让子工程区继承父工程,减少冗余,多团队开发。

  2.在pom.xml文件中添加所需要的依赖包。(方便子类继承)

  3.将父工程打包到本地仓库中。(使用 "工程右键">>"Run As" >>"Maven build... ">>输入"install")

    

二、创建Dao层模块(及导入相关配置文件)

  1.在父工程右键>>"new ">>"Maven Module" >>"finish"

  2.在该模块中写和dao有关的代码。如下图所示。

  

  3.测试功能代码(junit,每次测试完以防发生未知错误,建议测试完注解)

   因为test代码会和install冲突,执行两次。

  4.将dao模块发布到本地仓库(为service提供使用)

    右键模块>>"Run As">>"Maven Build...">>"install"

  

 三、service模块对的开发(及导入相关配置文件)

  1.在父工程右键>>"new ">>"Maven Module" >>"finish"

  2.在service模块中的“pom.xml”添加“dao依赖”(备注:如果在pom.xml中搜索不到,是因为没有重建索引)

  

  添加dao依赖包如图所示:

  3.添加service模块代码

  

  4.测试该模块(记得测试完要注释)使用以下代码测试。(因为service层测试和dao层不一样。service层需要用到dao层的配置代码,所以也是需要要到applicationContext-dao.xml配置文件。通过locations={"classpath*:applicationContext-*.xml"}来获取多个配置文件。)    

//@ContextConfiguration(locations={"classpath*:applicationContext-*.xml"})
//@RunWith(SpringJUnit4ClassRunner.class)
public class CustomerServiceImplTest {
//@Autowired
//private CustomerService customerService; @Test
public void test() {
Customer customer = customerService.findCustomerByID(1L);
System.out.println("********************"+customer.getCustName());
} }

      测试过后的代码一定要注释,不然打包回出现未知错误 !!!

  5.发布到本地仓库中(为web模块提供使用)

 四、对web模块进行开发

  1.创建web模块右键  "父工程">>"Maven Module">>"finish">>“选择war”>>"src\main\webapp\WEB-INF\web.xml"否则会出现红色错误

  2.导入service依赖jar包

  

  3.编写service模块的代码

  

  4.在web.xml中对ContextLoaderListener和StrutsPrepareAndExecuteFilter进行配置。配置代码如下。

  

<!-- 配置struts核心过滤器 -->
<filter>
<filter-name>struts</filter-name>
<filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class>
</filter> <filter-mapping>
<filter-name>struts</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping> <!-- 配置spring过滤器 --> <listener>
<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener> <context-param>
<param-name>contextConfigLocation</param-name>
<param-value>classpath*:applicationContext-*.xml</param-value>//classpath*:applicationContext-*.xml中的*是可以包括jar的
 </context-param>

  5.启动web项目进行测试。(tomcat:run)

  运行父工程和web模块都可以

    

MAVEN day04 SSH之分模块开发的更多相关文章

  1. SSH框架分模块开发

    ------------------siwuxie095 SSH 框架分模块开发 1.在 Spring 核心配置文件中配置多个内容,容易造成 配置混乱,不利于维护 「分模块开发主要针对 Spring ...

  2. Maven02——回顾、整合ssh框架、分模块开发、私服

    1 回顾 1.1 Maven的好处 节省空间 对jar包做了统一管理 依赖管理 一键构建 可跨平台 应用在大型项目可提高开发效率 1.2 Maven安装部署配置 1.3 Maven的仓库 本地仓库 远 ...

  3. java使用maven项目(二)分模块开发

    1       整合ssh框架 1.1     依赖传递 只添加了一个struts2-core依赖,发现项目中出现了很多jar, 这种情况 叫 依赖传递 1.2     依赖版本冲突的解决 1.  第 ...

  4. spring+springmvc+hibernate架构、maven分模块开发样例小项目案例

    maven分模块开发样例小项目案例 spring+springmvc+hibernate架构 以用户管理做測试,分dao,sevices,web层,分模块开发測试!因时间关系.仅仅測查询成功.其它的准 ...

  5. ssm集成(maven)& 分模块开发--详细教程

    1 maven版本的ssm 1.1 最简单的版本步骤: (1) 创建maven web项目 (2) 在pom.xml中导入依赖的jar包 (3) 再写配置文件: web.xml <!DOCTYP ...

  6. Spring_day04--HibernateTemplate介绍_整合其他方式_Spring分模块开发

    HibernateTemplate介绍 1 HibernateTemplate对hibernate框架进行封装, 直接调用HibernateTemplate里面的方法实现功能 2 HibernateT ...

  7. Struts2_day01--Struts2的核心配置文件_常量配置_分模块开发_Action编写方式

    Struts2的核心配置文件 1 名称和位置固定的 2 在配置文件中主要三个标签 package.action.result,标签里面的属性 标签package 1 类似于代码包,区别不同的actio ...

  8. Struts2分模块开发

    -------------------siwuxie095 Struts2 分模块开发 在实际开发中,如果一个项目是团队开发的,也就是很多人开发的, 每个人都需要去修改 struts.xml,因为 s ...

  9. 七 Spring的分模块开发的配置,保存客户案例

    Spring的分模块开发的配置 加载配置文件的时候,加载多个 在一个配置文件中引入多个配置文件(常用) 保存客户案例 applicationContext.xml: <?xml version= ...

随机推荐

  1. [转]调试利器-SSH隧道

    在开发微信公众号或小程序的时候,由于微信平台规则的限制,部分接口需要通过线上域名才能正常访问.但我们一般都会在本地开发,因为这能快速的看到源码修改后的运行结果.但当涉及到需要调用微信接口时,由于不和你 ...

  2. linux环境快速安装python3

    之前在linux上安装python3的时候,为了让不影响linux环境原有的python2的环境,选择的方法都是下载对应的linux环境的python包,不过 这里需要注意的是,不要更改linux默认 ...

  3. 深入 AngularUI Router

    翻译:深入 AngularUI Router 原文地址:http://www.ng-newsletter.com/posts/angular-ui-router.html ui-router: htt ...

  4. iOS 更改状态栏颜色和隐藏状态栏

    更改状态栏颜色 iOS7以后 状态栏的字体为黑色:UIStatusBarStyleDefault 状态栏的字体为白色:UIStatusBarStyleLightContent 解决方案 1.在info ...

  5. ATR的计算

    TR=∣最高价-最低价∣和∣最高价-昨收∣和∣昨收-最低价∣的最大值 TR = max(high-low, abs(last-high), abs(last-low)) ATR = MA(TR, N) ...

  6. Linux 文件umask默认权限_012

    一.       umask介绍 Linux 系统用户创建一个新的目录或文件时,系统会默认会分配相应的权限.目录或文件的权限是如何产生的呢? 1.这就是umask的功能,umask设置了用户创建文件或 ...

  7. log4j Tricks (log4j 1.2)

    1. 开启 log4j 框架内部的日志输出到控制台 # 在 log4j.properties 中添加log4j.debug=true # 配置 log4j 框架内部的日志通过 System.out 输 ...

  8. 安装 RabbitMQ

    Ubuntu 16.04 安装 RabbitMQ #1 更新 $ sudo apt-get update $ sudo apt-get upgrade #2 安装Erlang $ cd /tmp $ ...

  9. Oracle同义词(synonym)

    oracle的同义词总结   从字面上理解就是别名的意思,和视图的功能类似.就是一种映射关系.   同义词拥有如下好处:   节省大量的数据库空间,对不同用户的操作同一张表没有多少差别;   扩展的数 ...

  10. OpenJDK和JDK区别

    OpenJDK和JDK区别 OpenJDK与JDK的区别分析 Sun的JDK7.OpenJDK及IcedTea释疑 简介(ps): 简单来说jdk从7开始,弄出一个可以自由使用的公共版本(openjd ...