- 浏览: 720178 次
- 性别:
- 来自: 西安
文章分类
最新评论
-
cuqing:
laogao598599 写道匿名内部类不一定是局部内部类,还 ...
匿名内部类访问外部类中的局部变量必须是final属性 -
laogao598599:
匿名内部类不一定是局部内部类,还可以作为成员变量
匿名内部类访问外部类中的局部变量必须是final属性 -
stand_star:
非常给力!
struts2验证规则配置文件命名方式 -
wenlongsust:
嗯, 将返回值修改为html的确就可以了
EasyUI form ajax submit后,在IE下提示下载内容的解决办法 -
勇往直前wwt:
这样是自动增长,但每次id还得插入,如何只插入其他字段而让id ...
把主键定义为自动增长标识符类型
1.struts1 plugin
创建类实现接口org.apache.struts.action.PlugIn;
创建一个空构造函数
实现接口方法
配置struts-config.xml添加<plug-in/>元素
例:
public class WileyPlugin implements PlugIn {
public static final String PROPERTIES = "PROPERTIES";
public WileyPlugin() { }
public void init(ActionServlet servlet, ApplicationConfig applicationConfig) throws javax.servlet.ServletException {
System.err.println("---->The Plugin is starting<----");
Properties properties = new Properties();
try {
File file = new File("/WEB-INF/props.txt");
FileInputStream fis =new FileInputStream(file);
properties.load(fis);
ServletContext context = servlet.getServletContext();
context.setAttribute(PROPERTIES, properties);
Properties rProperties = (Properties)context.getAttribute (PROPERTIES);
System.err.println("---->Prop: LDAP " + rProperties.getProperty("LDAP"));
}
catch (FileNotFoundException fnfe) {
throw new ServletException(fnfe.getMessage());
}
catch (IOException ioe) {
throw new ServletException(ioe.getMessage());
}
}
public void destroy() {
System.err.println("---->The Plugin is stopping<----");
}
}
props文件内容:
LDAP=some ldap server name
struts-config.xml:
<plug-in className="wiley.WileyPlugin"/>
2.通过servlet来实现
新建一个类继承javax.servlet.http.HttpServlet,然后将加载数据的代码放到 init方法就可以了。具体代码如下:
public class StaticClass extends javax.servlet.http.HttpServlet implements javax.servlet.Servlet
{
private static final long serialVersionUID = 1L;
private static String title =" StaticClass ";
public void init(ServletConfig config)
{
System.out.println("public void init");
setdata();
}
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException
{
}
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException
{
}
public void setdata()
{
try
{
Properties props = new Properties();
props.setProperty("java.naming.factory.initial",
"org.jnp.interfaces.NamingContextFactory");
props.setProperty("java.naming.provider.url", "192.168.1.17:1099");
props.setProperty("java.naming.factory.url.pkgs",
"org.jboss.naming:org.jnp.interfaces");
InitialContext remotectx = new InitialContext(props);
DeptTempMgr deptTempMgr = (DeptTempMgr)remotectx.lookup("Business/DeptTempMgrBean/remote");
InetAddress inetAddress= deptTempMgr.getLocalIp();
String ipName = inetAddress.getHostAddress();
String homeName = inetAddress.getHostName();
System.out.println("远程调用的主机内网ip是:"+ipName);
System.out.println("远程调用的主机名是:"+homeName);
}
catch (Exception e)
{
System.out.println(e);
}
}
}
然后在web.xml配置一下:
<servlet>
<servlet-name>staticclass</servlet-name>
<servlet-class>
action.util.StaticClass
</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>staticclass</servlet-name>
<url-pattern>/servlet/staticclass.jsp</url-pattern>
</servlet-mapping>
其中load-on-startup的含义是:容器启动时加载这个servlet的顺序,正常的取值范围是:负数,0-5,如果是负数或者没有这个标签,则容器在启动时不自动加载 这个servlet,如果是0-5,则按照顺序加载这个servlet,执行初始化方法init()。数字是0-5,加载顺序也是0-5。
3.不管是Struts、Struts2还是其他的web层框架,它们目前基于的技术都是Servlet,只要根据web.xml找到那个启动类,我们就能通过覆盖该类的的init()方法来实现系统的初始化工作。可以写一个listener让它实现ServletContextListener接口,在contextInitialized()方法中做想做的事情。将此listener配置到web.xml中,Servlet容器如tomcat会在启动该web应用程序时调用此方法。
public class InitListener implements ServletContextListener {
public void contextDestroyed(ServletContextEvent sce) {
System.out.println("web exit ... ");
}
public void contextInitialized(ServletContextEvent sce) {
System.out.println("web init ... ");
//系统的初始化工作
// ...
}
}
<?xml version="1.0" encoding="UTF-8"?>
<web-app>
<listener>
<listener-class>fangwei.listener.InitListener</listener-class>
</listener>
<filter>
<filter-name>struts2</filter-name>
<filter-class>org.apache.struts2.dispatcher.FilterDispatcher</filter-class>
</filter>
<filter-mapping>
<filter-name>struts2</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
</web-app>
创建类实现接口org.apache.struts.action.PlugIn;
创建一个空构造函数
实现接口方法
配置struts-config.xml添加<plug-in/>元素
例:
public class WileyPlugin implements PlugIn {
public static final String PROPERTIES = "PROPERTIES";
public WileyPlugin() { }
public void init(ActionServlet servlet, ApplicationConfig applicationConfig) throws javax.servlet.ServletException {
System.err.println("---->The Plugin is starting<----");
Properties properties = new Properties();
try {
File file = new File("/WEB-INF/props.txt");
FileInputStream fis =new FileInputStream(file);
properties.load(fis);
ServletContext context = servlet.getServletContext();
context.setAttribute(PROPERTIES, properties);
Properties rProperties = (Properties)context.getAttribute (PROPERTIES);
System.err.println("---->Prop: LDAP " + rProperties.getProperty("LDAP"));
}
catch (FileNotFoundException fnfe) {
throw new ServletException(fnfe.getMessage());
}
catch (IOException ioe) {
throw new ServletException(ioe.getMessage());
}
}
public void destroy() {
System.err.println("---->The Plugin is stopping<----");
}
}
props文件内容:
LDAP=some ldap server name
struts-config.xml:
<plug-in className="wiley.WileyPlugin"/>
2.通过servlet来实现
新建一个类继承javax.servlet.http.HttpServlet,然后将加载数据的代码放到 init方法就可以了。具体代码如下:
public class StaticClass extends javax.servlet.http.HttpServlet implements javax.servlet.Servlet
{
private static final long serialVersionUID = 1L;
private static String title =" StaticClass ";
public void init(ServletConfig config)
{
System.out.println("public void init");
setdata();
}
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException
{
}
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException
{
}
public void setdata()
{
try
{
Properties props = new Properties();
props.setProperty("java.naming.factory.initial",
"org.jnp.interfaces.NamingContextFactory");
props.setProperty("java.naming.provider.url", "192.168.1.17:1099");
props.setProperty("java.naming.factory.url.pkgs",
"org.jboss.naming:org.jnp.interfaces");
InitialContext remotectx = new InitialContext(props);
DeptTempMgr deptTempMgr = (DeptTempMgr)remotectx.lookup("Business/DeptTempMgrBean/remote");
InetAddress inetAddress= deptTempMgr.getLocalIp();
String ipName = inetAddress.getHostAddress();
String homeName = inetAddress.getHostName();
System.out.println("远程调用的主机内网ip是:"+ipName);
System.out.println("远程调用的主机名是:"+homeName);
}
catch (Exception e)
{
System.out.println(e);
}
}
}
然后在web.xml配置一下:
<servlet>
<servlet-name>staticclass</servlet-name>
<servlet-class>
action.util.StaticClass
</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>staticclass</servlet-name>
<url-pattern>/servlet/staticclass.jsp</url-pattern>
</servlet-mapping>
其中load-on-startup的含义是:容器启动时加载这个servlet的顺序,正常的取值范围是:负数,0-5,如果是负数或者没有这个标签,则容器在启动时不自动加载 这个servlet,如果是0-5,则按照顺序加载这个servlet,执行初始化方法init()。数字是0-5,加载顺序也是0-5。
3.不管是Struts、Struts2还是其他的web层框架,它们目前基于的技术都是Servlet,只要根据web.xml找到那个启动类,我们就能通过覆盖该类的的init()方法来实现系统的初始化工作。可以写一个listener让它实现ServletContextListener接口,在contextInitialized()方法中做想做的事情。将此listener配置到web.xml中,Servlet容器如tomcat会在启动该web应用程序时调用此方法。
public class InitListener implements ServletContextListener {
public void contextDestroyed(ServletContextEvent sce) {
System.out.println("web exit ... ");
}
public void contextInitialized(ServletContextEvent sce) {
System.out.println("web init ... ");
//系统的初始化工作
// ...
}
}
<?xml version="1.0" encoding="UTF-8"?>
<web-app>
<listener>
<listener-class>fangwei.listener.InitListener</listener-class>
</listener>
<filter>
<filter-name>struts2</filter-name>
<filter-class>org.apache.struts2.dispatcher.FilterDispatcher</filter-class>
</filter>
<filter-mapping>
<filter-name>struts2</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
</web-app>
发表评论
-
bootstrap布局设计在线工具
2015-10-03 17:02 1012http://www.runoob.com/ http://w ... -
HTML5的<canvas>实用网站
2014-11-03 09:52 7981,SketchPad Sketchpad 是个优秀的 HTM ... -
js获取网页高度
2014-07-16 16:00 830<script> function getInf ... -
response.setContentType
2014-06-09 17:23 808HTML format (.htm or .html): te ... -
EasyUI form ajax submit后,在IE下提示下载内容的解决办法
2014-05-19 21:25 8597使用EasyUI form插件创建或编辑成功后返回json,在 ... -
e.keycode详解
2014-05-18 16:44 1104function submitLoginForm(e) { ... -
easyui form 方式提交数据
2014-05-16 22:24 25481<form id="ff" meth ... -
jsp 静态引入与动态引入
2014-05-15 18:08 13101.动态引入<jsp:include page=&quo ... -
apache tomcat的几个版本
2014-05-14 12:05 739* zip 不需要安装,解压后直接 ... -
HTML让表单 文本框 只读不可编辑的方法
2014-05-12 10:46 19121: onfocus=this.blur() <inpu ... -
js获取项目根路径
2014-02-08 11:50 916//js获取项目根路径,如: http://localhost ... -
http状态代码含义
2013-12-02 01:00 521100 - 表示已收到请求的一部分,正在继续发送余 ... -
SSL证书请求文件(CSR)生成指南 - Apache SSL
2013-11-18 16:31 4652SSL证书请求文件(CSR)生 ... -
SSL证书请求文件(CSR)生成指南 - Apache SSL
2013-11-14 11:08 1420http://www.willrey.com/support/ ... -
javascript 代码中window.external的使用
2013-05-28 15:57 13655C#与javascript交互 1. 在Form中,要让We ... -
将html table中的数据封装成json格式数据
2013-03-14 19:21 3977var tab=document.getElement ... -
jsp打印log4j日志
2013-01-08 14:48 1412Logger _log1= Logger.getLogger( ... -
out.print()与out.write()区别
2013-01-04 17:43 2931在servlet中: PrintWriter out = re ... -
Dump、javacore内存分析资源
2012-02-27 17:05 1623http://www.alphaworks.ibm.com/t ... -
websphere的IIOP服务端口
2012-02-27 15:30 2161was5.0上default server的默认boots ...
相关推荐
<description>Socket服务随web启动而启动 <listener-class>service.ServerSocketListener ``` 值得注意的是,尽管也可以通过`<servlet>`标签来实现类似的功能,但这种方式在服务器关闭时可能会导致资源未被...
"flutter_web_loading_animation"项目正为此目的而设计,它提供了一个启动加载动画,使得Flutter Web App在加载过程中不会显得过于空白和无响应,从而提高用户对应用程序的第一印象。 1. **Flutter Web与加载动画**...
启用Web管理服务的命令是 `http server enable`,这条命令会启动交换机上的HTTP服务器,使得设备可以接受来自网络的HTTP请求,从而提供Web管理服务。在华为设备上,通常还需要配置用户名和密码来确保网络安全,例如...
当用户打开一个网页,网站启动加载代码会控制页面如何逐步呈现,包括加载资源、执行JavaScript、渲染DOM元素等过程。理解并优化这部分代码对于提升网页性能至关重要。 首先,我们需要了解HTML、CSS和JavaScript在...
总的来说,"非常好的启动加载js模板"是为了提升Web应用的启动效率和用户体验而设计的一种技术解决方案。通过合理地运用上述知识点,开发者可以创建出高效、流畅的应用,满足用户对快速响应和优质体验的需求。在实际...
在这个方法中,我们可以检查即将发起的请求URL,如果这个URL指向的是已下载到本地的静态资源,那么就阻止默认的网络请求,改为从本地加载资源。 实现步骤如下: 1. 创建一个WKWebView实例,并设置其...
- 当应用服务器启动并加载Web应用程序时,首先读取`web.xml`文件。 - 首先解析的是`<context-param>`节点,这些参数作为全局配置,被转换为`ServletContext`的初始化参数。 - 紧接着,应用服务器创建`...
动态加载资源是软件开发中的一个重要概念,特别是在移动应用和大型Web项目中,它能显著提升应用性能和用户体验。动态加载,顾名思义,是指在程序运行时按需加载资源,而不是在应用程序启动时一次性加载所有资源。...
"正在加载效果"通常指的是在Web应用或者软件中,用户等待数据或页面加载时显示的一种交互反馈。这种效果有助于提高用户体验,让用户知道系统正在进行后台处理,而不是无响应。在这个话题中,我们将深入探讨两种可能...
在Web开发过程中,Java开发者经常会遇到一个问题:每次修改了Java源代码后,都需要重新编译并启动服务器才能看到更改的效果,这极大地降低了开发效率。"web开发自动加载修改后的java文件"这一技术就是为了应对这个...
4. 应用程序启动过程中的其他因素:除了web service本身,WinForm应用程序在首次运行时也可能需要初始化各种组件、资源加载等,这些都可能导致整体启动时间变长。 5. Web service的网络配置和硬件性能:Web service...
Unity WebGL的启动界面通常包括Unity的标志和加载进度条,这是默认设置。但开发者可以根据需求自定义这个界面,比如替换为自己的公司或项目的Logo,以增强品牌识别度。 2. **UniveWeTemp项目** "Universal WebGL ...
当我们谈论“加载Spring文件,在web.xml中的配置”时,主要是指如何在Web应用启动时初始化Spring IoC(Inversion of Control,控制反转)容器并加载配置文件。 1. **使用ContextLoaderListener** `<listener>`标签...
Tomcat的启动顺序涉及到多个层次的加载,从Bootstrap类开始,逐步加载系统配置、公共库、共享库以及Web应用程序。 【详细知识点】: 1. Bootstrap类: Tomcat的启动始于Bootstrap类,这是Tomcat服务器的主入口点...
预加载Web页面还可以结合预测用户行为,例如,如果用户经常浏览某个特定页面,可以在应用启动时或者空闲时预加载该页面。为了实现这一目标,我们需要收集和分析用户行为数据,然后在适当的时间触发预加载操作。 在...
4. **预加载**:与延迟加载相反,预加载是在用户可能需要之前就开始加载资源。这通常用于预测用户的下一步操作,提前准备好所需资源,减少延迟感。例如,浏览器可能会在用户滚动页面时预加载下一屏的内容。 5. **...
它们是最早被加载的组件,因为它们需要在其他服务启动之前进行配置,以便对Web应用的生命周期事件做出响应。例如,如果你有一个监听器负责初始化某个全局对象,那么这个对象会在应用启动时被创建。 2. **Filter...
标题 "自动将模块移动到WebWorkerWebpack加载程序" 指的是使用特定的Webpack加载器——developit-workerize-loader,来实现JavaScript模块的自动化迁移,使其能够在Web Worker线程中运行。在Web开发中,Web Worker是...