今天接到任务,是以前用ssh开发的一套权限系统,现在我们要做新的应用,并且以后我们的开发都基于这个权限进行开发。以前都是不断的往这个权限里面加应用,现在反过来,要降低耦合。现在我的应用系统也是ssh,给这个应用加入权限使得这个应用可以单独工作,别且权限系统也可以单独工作。
在这个应用唯一用到的就是权限的用户管理,所以将权限打成jar,放入本应用系统当中,下来就是一个项目配置两个数据源,配置方法,在tomcat当中,以前是context配置一个数据源,现在配置两个,如下
<Context path="/studentManage" debug="0" reloadable="true" crossContext="true">
<Resource name="jdbc/studentManage" auth="Container" type="javax.sql.DataSource"/>
<ResourceParams name="jdbc/studentManage">
<parameter>
<name>factory</name>
<value>org.apache.commons.dbcp.BasicDataSourceFactory</value>
</parameter>
<parameter>
<name>driverClassName</name>
<value>com.mysql.jdbc.Driver</value>
</parameter>
<parameter>
<name>url</name>
<value>jdbc:mysql://192.168.186.131:3306/studentmanage?useUnicode=true&characterEncoding=UTF-8</value>
</parameter>
<parameter>
<name>username</name>
<value>root</value>
</parameter>
<parameter>
<name>password</name>
<value></value>
</parameter>
<parameter>
<name>maxActive</name>
<value>1000</value>
</parameter>
<parameter>
<name>maxIdle</name>
<value>200</value>
</parameter>
<parameter>
<name>maxWait</name>
<value>-1</value>
</parameter>
</ResourceParams>
<Resource name="jdbc/cms" auth="Container" type="javax.sql.DataSource"/>
<ResourceParams name="jdbc/cms">
<parameter>
<name>factory</name>
<value>org.apache.commons.dbcp.BasicDataSourceFactory</value>
</parameter>
<parameter>
<name>driverClassName</name>
<value>com.mysql.jdbc.Driver</value>
</parameter>
<parameter>
<name>url</name>
<value>jdbc:mysql://192.168.186.131:3306/cms_softpark?useUnicode=true&characterEncoding=UTF-8</value>
</parameter>
<parameter>
<name>username</name>
<value>root</value>
</parameter>
<parameter>
<name>password</name>
<value></value>
</parameter>
<parameter>
<name>maxActive</name>
<value>1000</value>
</parameter>
<parameter>
<name>maxIdle</name>
<value>200</value>
</parameter>
<parameter>
<name>maxWait</name>
<value>-1</value>
</parameter>
</ResourceParams>
</Context>
可以看出,配置了两个Resource ,这样就ok了。
下面就是整合spring配置文件,在web.xml中加载两个spring文件,一个是本应用的,一个是权限系统的。
例如
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>
/WEB-INF/spring/permissionContext-hibernate.xml,/WEB-INF/spring/applicationContext-hibernate.xml
</param-value>
</context-param>
下面就是spring文件,这里我就不那出来,只是提醒大家注意的是,原来是两个应用所以他们分别有自己的datasource,sessionFactory,(就是spring文件经常配置的),现在我们整合在一个应用,所以,他们的datasource,sessionFactory千万不能重名,否则会找错配置文件的。例如第一个是datasource,第二个应该加个*1,保证不重名,这样启动服务器就行了。
此整合仅限于不跨域状况,如果使用跨域,最好还是使用sso。
分享到:
相关推荐
压缩包文件`cili-web`可能是一个包含Web应用代码的项目,其中可能包含了实现多数据源共存的相关代码和配置。通常,项目中会有配置文件(如`application.properties`或`application.yml`)来定义数据源信息,以及...
本DEMO演示了如何在SpringMVC和Mybatis框架中配置多个数据源,并结合Maven进行项目管理,提供了一个实际操作的参考。 首先,我们需要了解SpringMVC和Mybatis的基础。SpringMVC是Spring框架的一部分,主要用于处理...
总结来说,"springmvc_mybatis_多数据源"项目展示了如何在SpringMVC和MyBatis框架下有效地管理和使用多个数据源。这涉及到Spring的事务管理、数据源路由、MyBatis的配置等多个方面,对于理解和实践企业级应用开发中...
1. **配置文件设置**:首先,你需要在`applicationContext.xml`或`mybatis-config.xml`中定义多个数据源。通常,我们会使用`org.springframework.jdbc.datasource.DriverManagerDataSource`或`...
Java Web项目源代码设计资料是一份宝贵的资源,涵盖了多个实际开发中的应用场景,旨在帮助开发者深入理解和实践Java在Web开发中的应用。这些项目源代码通常包括了前端界面、后端服务、数据库交互以及业务逻辑处理等...
本项目围绕“Java简单分布式架构,多个数据源,线程池多线程访问”这一主题展开,旨在通过利用Java技术栈实现一个高效的分布式系统。 首先,我们关注的是“分布式”这一概念。分布式系统是由多台计算机通过网络连接...
【Web前端开发实训项目源代码】是一个以Bootstrap框架为基础的实训项目,主要目的是为了帮助学习者掌握Web前端开发的关键技术和实践经验。在这个项目中,开发者利用Bootstrap的灵活性和响应式设计特性,构建了一个...
在这样的背景下,"cxf多数据源配置"指的是如何在CXF项目中配置并管理多个数据源,以便灵活地访问和操作不同来源的数据。 【描述】:“通过cxf将多个webServices整合到一起方便管理与维护” 这个描述意味着我们正在...
综上所述,BIRT与Web项目的集成涉及多个层面,从数据连接、报表设计到服务器配置和安全控制。理解这些知识点并灵活运用,可以帮助你成功地将BIRT的强大报表功能融入到Web应用中,提高业务分析效率。
SpringBoot 微服务框架整合配置及应用中,多数据源依赖是指在同一个应用程序中使用多个数据源,以满足不同的业务需求。在本文中,我们将介绍如何在 SpringBoot 中使用多数据源框架,包括配置、依赖和应用。 首先,...
".zip"是一种广泛使用的文件格式,用于将多个文件或目录打包成一个单一的可压缩文件。这种格式便于归档、备份和分发大文件,尤其是当需要在不同的系统之间传输时。在Java中,可以使用Java.util.zip包提供的类(如...
在描述中提到的"多一些方法"可能指的是项目中定义了多个Action来处理不同类型的请求。 为了使代码更简洁、易懂,开发者可能采用了以下最佳实践: 1. **模型绑定**:WebApi能够自动将HTTP请求中的数据绑定到Action的...
本资源是 Web 项目需求说明书的样板,涵盖了项目概况、项目目标、系统架构、搜索引擎、数据中台、API 网关、搜索客户端、智能问答等多个方面的知识点。 项目概况 本项目的建设目标是构建一整套智能搜索问答服务,...
"webtest2"可能是指项目的根目录或者某个主要模块的名称,暗示着项目可能包含多个层次的目录结构,如src(源代码)、WEB-INF(Web应用的特殊目录,存放web.xml配置文件)、lib(存放jar包)、dist(部署后的可执行...
在这个"golang web项目"中,"gomvc"很可能就是项目的主目录,包含了源代码、配置文件和其他资源。目录结构可能如下: - `controllers/`:包含所有控制器的Go源码,每个控制器对应一个或多个HTTP请求处理函数。 - `...
3. **dynamic-datasource**:这是一个专门为Spring Boot设计的库,用于动态切换和管理多个数据源。它允许我们在运行时根据业务需求动态选择合适的数据源,提供了数据源路由和切换的功能。 4. **配置与整合**:在...
要实现多数据源的切换,我们需要一个数据源路由类(`AbstractRoutingDataSource`)。这个类可以根据某种策略(如请求上下文、注解、线程本地变量等)动态选择使用哪个数据源。在初始化时,需要将所有可能的数据源...
这样的项目通常涉及到多个关键的技术栈,包括前端用户界面、后端服务处理以及数据库交互。 【描述】"一个开源的仿天猫商城开发的web项目源码"指出该项目是开放源代码的,这意味着开发者可以自由地查看、学习、修改...
综上所述,"J2EEweb项目"是一个涵盖Java Web开发、数据库管理、安全性控制、数据统计和用户管理等多个方面的综合项目。开发者需要具备扎实的Java编程基础、熟悉J2EE架构、了解Oracle数据库操作,并对SSH协议有所理解...
这可以有效地实现数据库的隔离,提高系统的性能和稳定性,例如,一个数据源用于存储用户信息,另一个用于交易记录。 【Jersey】 Jersey是Java RESTful Web服务(JAX-RS)的实现,用于创建和消费RESTful API。它提供...