现在有这样一个需求每个在网站注册的用户都要为他们建立一个套帐,也就是建立一个数据库现在用户登陆时要根据数据库名连到对应的数据库,可以做到吗?struts+spring+jpa环境
解决方案 »
- jsp页面如何嵌套FLV格式视频
- hibernate异常java.lang.IndexOutOfBoundsException
- 关于struts怎么运用到session.setAttribute()中
- 请各位介绍几本书!!先谢谢了!!
- 最近tomcat 启动后,过段时间就出现下面异常,修改了连接数也不行,希望大虾们指点下!谢谢了
- 普通的java程序可以访问 jboss 的jndi服务吗?
- 求助多线程编程(两个任务并发调用,互不影响)
- java里面如何定义一个类的属性?
- 如何正确解析email地址:=?gb2312?B?6YKxID8=?=<[email protected]>?
- 疑惑!回答给高分
- 请教学习方向
- 刚毕业来公司要学习struts2,推荐本不错的吧!谢谢了!
我也知道拼字符串,但在jpa中
是这样注入一个实体管理器
@PersistenceContext protected EntityManager em;
这个管理器是xml文件配置好了的,动态修改xml要重启服务器也不现实,我就是不知道要怎么切换数据库
public UserFilter implements Filter{
static ThreadLocal<String> username=new ThreadLocal<String>();
public void doFilter(ServletRequest request, ServletResponse response,
FilterChain chain) throws IOException, ServletException {
username.set((String)((HttpServletRequest)request).getSession(true).getAttribute("user"));//将用户名存入当前线程变量
chain.doFilter(request,response);
}
}2、spring中有个FactoryBean接口,定义一个类实现这个接口,将它的getObject方法返回一个EntityManager对象。用这个类代替你在xml中配置的EntityManager对象public MyEntityManagerFactoryBean implements FactoryBean{
................
public Object getObject(){
String username=UserFilter.username.get();//这里得到用户名
//在这里通过用户名和其它参数构造EntityManager对象
}
..........
}
完成以上两点,在其它位置操作任意一个用户的数据库都和操作同一个数据库没差别,如果有原有的程序也不用改了。
没办法
谢谢flyxxxxxx 兄台的指教,学习到了