Atitit.ioc 动态配置文件guice 设计原理
Atitit.ioc 动态配置文件guice 设计原理
3. Ioc 分发器 配合 apche MethodUtils.invokeStaticMethod2
1. Bat启动时注入配置文件
SET JAVA_HOME=C:\Program Files\Java\jdk1.8.0_71
set RESIN-HOME=c:\resin-4.0.22
set classpath=%classpath%;%RESIN-HOME%\lib\jasper.jar;%RESIN-HOME%\lib\javaee-16.jar;%RESIN-HOME%\lib\resin.jar
rem 3,配置classpath %RESIN-HOME%\lib\resin.jar (如果是win7的话没必要设置)
rem 否则报异常:com.caucho.loader.SystemClassLoader
rem 否则报异常:com.caucho.loader.SystemClassLoader
rem %RESIN-HOME%\resin.exe console -resin-home %RESIN-HOME% --debug-port 8000
"%JAVA_HOME%\bin\java" -Dresin.server=1 -Djava.util.logging.manager=com.caucho.log.LogManagerImpl -Djava.system.class.loader=com.caucho.loader.SystemClassLoader -Djava.endorsed.dirs="%java_home%\jre\lib\endorsed;E:\resin-4.0.22\endorsed" -Djavax.management.builder.initial=com.caucho.jmx.MBeanServerBuilderImpl -Djava.awt.headless=true -Dresin.home=/%RESIN-HOME% -Xss1m -Xmx556m -Xrs -Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=8000 com.caucho.server.resin.Resin --root-directory /%RESIN-HOME% -conf %RESIN-HOME%\conf\resin.xml -resin-home /%RESIN-HOME% -root-directory /%RESIN-HOME% console -debug-port 8000 -Dapptype="jobus"
作者:: 绰号:老哇的爪子 ( 全名::Attilax Akbar Al Rapanui 阿提拉克斯 阿克巴 阿尔 拉帕努伊 ) 汉字名:艾龙, EMAIL:1466519819@qq.com
转载请注明来源: http://blog.csdn.net/attilax
2. ioc调用
this.dbx=com.attilax.ioc.IocXq214.getBean(DBX.class);
3. Ioc 分发器 配合 apche MethodUtils.invokeStaticMethod
/**
* @author attilax 老哇的爪子
@since o92 j_48_u$
*/
package com.attilax.ioc;
import com.attilax.core;
import com.attilax.db.DBX;
import com.attilax.db.DbxMybatis;
import com.attilax.persistence.HbxX;
import com.attilax.persistence.PX;
import com.focustar.ServiceLoctor4vod;
import com.focustar.downtask.GvDownloadTaskSvs;
import com.google.inject.Binder;
import com.google.inject.Guice;
import com.google.inject.Injector;
import com.google.inject.Module;
import com.google.inject.name.Names;
import static com.attilax.core.*;
import java.util.*;
import java.net.*;
import java.io.*;
import org.apache.commons.lang3.reflect.MethodUtils;
//import org.directwebremoting.extend.AbstractCreator;
//import org.directwebremoting.extend.Creator;
/**
* @author attilax 老哇的爪子
*@since o92 j_48_u$
*/
public class IocXq214 {
//publicstatic Injector ati;
public static void main(String[] args) {
System.setProperty("apptype","jobus");
System.out.println(getBean(DBX.class));
}
/**
@author attilax 老哇的爪子
@since o92 j_48_40
* @param class1
* @return
*/
public static <t> t getBean(Class<t> class1) {
String apptype=System.getProperty("apptype");
String clsName="aaaCfg.IocX4@app@".replace("@app@", apptype);
Object o= com.attilax.reflect.MethodUtils.invokeStaticMethod(clsName, "getBean", (Object)class1);
// attilax 老哇的爪子 j_48_40 o92
return (t) o;
}
// attilax 老哇的爪子 j_48_u o92
/* (non-Javadoc)
* @see org.directwebremoting.extend.Creator#getType()
* @author attilax 老哇的爪子
*@since o93 l_d_c$
*/
/**
@author attilax 老哇的爪子
@since o02 4_f_56
* @param string
*/
public <t> t getBean(String className) {
// attilax 老哇的爪子 4_f_56 o02
try {
Class c=Class.forName(className);
return (t) getBean(c);
} catch (ClassNotFoundException e) {
// attilax 老哇的爪子 4_h_t o02
e.printStackTrace();
throw new RuntimeException(e);
}
//return null;
}
}
// attilax 老哇的爪子
Atitit.ioc 动态配置文件guice 设计原理的更多相关文章
- Spring IOC设计原理解析:本文乃学习整理参考而来
Spring IOC设计原理解析:本文乃学习整理参考而来 一. 什么是Ioc/DI? 二. Spring IOC体系结构 (1) BeanFactory (2) BeanDefinition 三. I ...
- Atitit ati licenseService 设计原理
Atitit ati licenseService 设计原理 C:\0workspace\AtiPlatf\src_atibrow\com\attilax\license\LicenseX.ja ...
- Spring技术内幕——深入解析Spring架构与设计原理(一)IOC实现原理
IOC的基础 下面我们从IOC/AOP开始,它们是Spring平台实现的核心部分:虽然,我们一开始大多只是在这个层面上,做一些配置和外部特性的使用工作,但对这两个核心模块工作原理和运作机制的理解,对深 ...
- Atitit.异常的设计原理与 策略处理 java 最佳实践 p93
Atitit.异常的设计原理与 策略处理 java 最佳实践 p93 1 异常方面的使用准则,答案是:: 2 1.1 普通项目优先使用异常取代返回值,如果开发类库方面的项目,最好异常机制与返回值都提供 ...
- Atitit.异常机制的设计原理
Atitit.异常机制的设计原理 缺陷 关键是只要知晓有一个异常表的存在,try 的范围就是体现在异常表行记录的起点和终点.JVM 在 try 住的代码区间内如有异常抛出的话,就会在当前栈桢的异常表中 ...
- Atitit.struts排除url 的设计and 原理 自定义filter 排除特定url
Atitit.struts排除url 的设计and 原理 自定义filter 排除特定url 1.1. 原理流程1 2. Invoke1 3. StrutsX2 1.1. 原理流程 读取struts配 ...
- BeanFactory容器的设计原理
XmlBeanFactory设计的类继承关系 1.BeanFactory接口提供了使用IoC容器的规范.在这个基础上,Spring还提供了符合这个IoC容器接口的一系列容器的实现供开发人员使用. 2. ...
- Kafka设计原理
一.入门 1.简介 Apache Kafka是一个分布式消息发布订阅系统.它最初由LinkedIn公司基于独特的设计实现为一个分布式的提交日志系统( a distributed commit log) ...
- SpringMVC 原理 - 设计原理、启动过程、请求处理详细解读
SpringMVC 原理 - 设计原理.启动过程.请求处理详细解读 目录 一. 设计原理 二. 启动过程 三. 请求处理 一. 设计原理 Servlet 规范 SpringMVC 是基于 Servle ...
随机推荐
- hiho一下第129周 后缀自动机二·重复旋律6
后缀自动机三·重复旋律6 时间限制:15000ms 单点时限:3000ms 内存限制:512MB 描述 小Hi平时的一大兴趣爱好就是演奏钢琴.我们知道一个音乐旋律被表示为一段数构成的数列. 现在小Hi ...
- 十. 图形界面(GUI)设计3.标签、按钮和按钮事件
标签和按钮也许是图形界面中最常见的两种组件,按钮又总是与激发动作事件有关. 标签 标签(JLabel)是最简单的Swing组件.标签对象的作用是对位于其后的界面组件作说明.可以设置标签的属性,即前景色 ...
- 【数学】【HAOI2008】【BZOJ1045糖果传递】【BZOJ3293分金币】论数学的重要性
BZOJ1045和BZOJ3293一模一样两道题,在这里我用1045来讲. 1045: [HAOI2008] 糖果传递 Time Limit: 10 Sec Memory Limit: 162 MB ...
- 微服务实施Spring Boot/Spring Cloud中踩过的坑(转)
http://tietang.wang/2016/09/08/%E5%BE%AE%E6%9C%8D%E5%8A%A1/%E5%BE%AE%E6%9C%8D%E5%8A%A1%E5%AE%9E%E6%9 ...
- 鼠标悬浮tip 显示
鼠标悬浮tip 显示 <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> &l ...
- CSS背景属性background
background属性是所有背景属性的缩写: 以下是这些背景属性: background-color:背景颜色 你可以通过颜色名称(red/green/blue)来设置 也可以用十六进制(#fff/ ...
- 在K8s中创建StatefulSet
在K8s中创建StatefulSet 遇到的问题: 使用Deployment创建的Pod是无状态的,当挂在Volume之后,如果该Pod挂了,Replication Controller会再run一个 ...
- 今天终于看了一下tanh函数的形式,双曲正切函数
tanh = sinh / cosh sinh = Hyperbolic sin cosh = Hyperbolic cos
- ES里关于对象的拓展
一.对象类别 在浏览器这样的执行环境中,对象没有统一的标准,在标准中又使用不同的术语描述对象,ES6规范清晰定义了每一个类别的对象,对象的类别如下 1.普通(Ordinary)对象:具有JS对象所有的 ...
- TCP为什么要三次握手,不是两次四次
转载: http://blog.chinaunix.net/uid-20726927-id-2455485.html 在革命战争影片中,经常会看到英勇的解放军战士背着步话机在喊“长江长江,我是黄河 ...