今天接到任务,是以前用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。
分享到:
相关推荐
相信很多朋友在开发的时候,可能会碰到需要一个项目,配置多个数据源的需求,可能是同一种数据库,也可能是不同种类的数据库,这种情况,我们就需要配置多数据源对程序的支持了。 本项目就是一个多数据源的配置,...
面向主题(Subject Oriented):数据仓库通常围绕一些主题,... 集成(Integrated):数据仓库通常是结合多个异种数据源构成的,异种数据源可能包括关系数据库、面向对象数据库、文本数据。库、Web数据库、一般文件等。
数据仓库通常是结合多个异种数据源构成的,异种数据源可能包括关系数据库、面向对象数据库、文本数据库、Web数据库、一般文件等。 1.3 时变(Time Variant)的数据集合 数据存储从历史的角度提供信息,数据仓库中...
webserver_20200531_[SpringBoot多数据源成果源代码] SpringBoot微服务框架【整合配置及应用】 【dynamic-datasource】多数据源依赖
通过cxf将多个webServices整合到一起方便管理与维护
这个Python项目是一个基于深度学习的Web端多格式纠错系统,它利用PaddleNLP和FastAPI等先进技术,旨在提高Web内容的准确性和可靠性。以下是该项目的资源介绍: 1. **技术框架**:项目使用了PaddlePaddle作为深度...
1. **系统设计**:项目的主要目的是为多个Web服务提供统一的身份认证机制,确保用户身份的验证和授权过程安全可靠。 2. **技术实现**: - 利用了Python编程语言进行开发,结合Web框架如Django或Flask,以及可能的...
文本挖掘(Text Mining)是数据挖掘的一个分支,它是把文本型信息源作为分析的对象,利用定量计算和定性...Web挖掘研究覆盖了多个研究领域,包括数据库技术、信息获取技术、统计学、人工智能中的机器学习和神经网络等。
疫苗提供者API 本地Web服务器API项目,可从多个数据源获取疫苗预约的可用性
10.3.2 从多个表中获取数据 10.3.3 以特定的顺序获取数据 10.3.4 分组与合计数据 10.3.5 选择要返回的行 10.3.6 使用子查询 10.4 更新数据库记录 10.5 创建后修改表 10.6 删除数据库中的记录 10.7 表的删除 ...
2个目标文件,FTP的目标是:(1)提高文件的共享性(计算机程序和/或数据),(2)鼓励间接地(通过程序)使用远程计算机,(3)保护用户因主机之间的文件存储系统导致的变化,(4)为了可靠和高效地传输,虽然用户...
c# 物联网平台服务器框架源码。集成iot,web api服务,这套带码是通过C#编写集成IOCP高性能高并发优势服务器服务源码。...5、开放服务器接收源数据事件接口,使用时可以自定义协议以及扩展性更强。
一个简单的Web应用程序,用于演示如何在Spring Boot项目中使用多个MySQL数据源。 在运行此项目之前,请在MySQL上创建“ db1”和“ db2”。 转到从db1读取数据。 转到从db2读取数据。
在web开发中,可以利用hibernate配置数据源,但在实际的应用中,可能要连接多个数据源, 1.配置dataSource <value>org.logicalcobwebs.proxool.ProxoolDriver <property name=url>
3.3.2 使用多个处理器 58 3.3.3 处理器函数 59 3.3.4 串联多个处理器和处理器函数 61 3.3.5 ServeMux和DefaultServeMux 65 3.3.6 使用其他多路复用器 66 3.4 使用HTTP/2 68 3.5 小结 70 ...
入库,出库时一次可录入多个产品,数量可设置 员工权限细分,有80多个权限 仓库加入负责人,员工只能查看自己负责的仓库 员工分部门,会员分组 加入帐务管理 查询订单里可按仓库查询 加入产品图片,有开关 加入员工...
10.3.2 从多个表中获取数据 10.3.3 以特定的顺序获取数据 10.3.4 分组与合计数据 10.3.5 选择要返回的行 10.3.6 使用子查询 10.4 更新数据库记录 10.5 创建后修改表 10.6 删除数据库中的记录 10.7 表的删除 10.8 ...
PHP/SWF Charts - PHP/SWF 是一个简单支持web图表的强大工具,你能使用 PHP 来收集数据,并发送给flash,支持很多图表类型: Line, Column, Stacked column, Floating column, 3D column, Stacked 3D column, ...
支持多种文件格式(csv、txt、...使用以下命令安装requirements.txt文件中提到的所有库pip3 install -r requirements.txt 从项目目录打开终端/命令提示符,然后app.py通过执行命令来运行该文件streamlit run app.py。