框架是最讲求规范的
1、所有的接口文件首字母大写
2、实现类语义首字母大写
3、application-contex.xml 实现的Beans建议小写
4、dwr.xml首字母小写
5、spring-serverlet.xml的属性调用上述实现bean
6、还要注意字符集。
web.xml
CODE:
<?xml version="1.0" encoding="UTF-8"?>
<web-app id="NewSMS">
<display-name>NewSMS</display-name>
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>classpath:ApplicationContext-*.xml</param-value>
</context-param>
<context-param>
<param-name>weblogic.httpd.inputCharset./*</param-name>
<param-value>GBK</param-value>
</context-param>
<filter>
<filter-name>encodeFilter</filter-name>
<filter-class>com.hiber.EncodeFilter</filter-class>
<init-param>
<param-name>encode</param-name>
<param-value>GBK</param-value>
</init-param>
</filter>
<filter>
<filter-name>openSessionInViewFilter</filter-name>
<filter-class>org.springframework.orm.hibernate3.support.OpenSessionInViewFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>encodeFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
<filter-mapping>
<filter-name>openSessionInViewFilter</filter-name>
<url-pattern>/dwr/*</url-pattern>
</filter-mapping>
<listener>
<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener>
<servlet>
<servlet-name>springapp</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>springapp</servlet-name>
<url-pattern>*.do</url-pattern>
</servlet-mapping>
<servlet>
<servlet-name>log4jInit</servlet-name>
<servlet-class>com.hiber.Log4jInit</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet>
<servlet-name>dwr-invoker</servlet-name>
<display-name>DWR Servlet</display-name>
<description>Direct Web Remoter Servlet</description>
<servlet-class>org.directwebremoting.servlet.DwrServlet</servlet-class>
<init-param>
<param-name>crossDomainSessionSecurity</param-name>
<param-value>false</param-value>
</init-param>
<init-param>
<param-name>debug</param-name>
<param-value>true</param-value>
</init-param>
<init-param>
<param-name>pollAndCometEnabled</param-name>
<param-value>true</param-value>
</init-param>
<init-param>
<param-name>allowGetForSafariButMakeForgeryEasier</param-name>
<param-value>true</param-value>
</init-param>
<load-on-startup>2</load-on-startup>
</servlet>
<servlet>
<servlet-name>tagFactoryServlet</servlet-name>
<servlet-class>com.htxx.service.taglib.factory.TagFactoryServlet</servlet-class>
<load-on-startup>3</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>dwr-invoker</servlet-name>
<url-pattern>/dwr/*</url-pattern>
</servlet-mapping>
<welcome-file-list>
<welcome-file>index.jsp</welcome-file>
<welcome-file>index.html</welcome-file>
</welcome-file-list>
<taglib>
<taglib-uri>/WEB-INF/htxx-tag.tld</taglib-uri>
<taglib-location>/WEB-INF/htxx-tag.tld</taglib-location>
</taglib>
</web-app>
dwr.xml
CODE:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE dwr PUBLIC "-//GetAhead Limited//DTD Direct Web Remoting 2.0//EN" "http://getahead.ltd.uk/dwr/dwr20.dtd">
<dwr>
<allow>
<create creator="spring" javascript="mktreeBus"
scope="script">
<param name="beanName" value="mktreeBus"></param>
</create>
</allow>
</dwr>
ApplicationContext-bus.xml
CODE:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN" "http://www.springframework.org/dtd/spring-beans.dtd">
<beans>
<bean id="mktreeBus" class="com.sms.bus.imp.MktreeBusImp">
<property name="dao"><ref bean="genericDao"/></property>
</beans>
springapp-servlet.xml
CODE:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN" "http://www.springframework.org/dtd/spring-beans.dtd">
<!--
- Application context definition for "springapp" DispatcherServlet.
-->
<beans>
<!--============================================================================
URL Mapping configuration
=============================================================================-->
<bean id="beanNameUrlMapping"
class="org.springframework.web.servlet.handler.BeanNameUrlHandlerMapping">
<property name="alwaysUseFullPath" value="true" />
</bean>
<!--============================================================================
Velocity configuration
=============================================================================-->
<bean id="viewResolver" class="org.springframework.web.servlet.view.velocity.VelocityViewResolver">
<property name="contentType"><value>text/html;charset=GBK</value></property>
</bean>
<bean id="velocityConfig" class="org.springframework.web.servlet.view.velocity.VelocityConfigurer">
<property name="configLocation" value="/WEB-INF/velocity.properties" />
<property name="resourceLoaderPath" value="/" />
</bean>
<bean id="act2" name="/yhqx.do" class="com.test.act2">
<property name="mktreeBus">
<ref bean="mktreeBus"/>
</property>
</bean>
</beans>
action:
CODE:
package com.test;
import java.io.PrintWriter;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.springframework.web.servlet.ModelAndView;
import org.springframework.web.servlet.mvc.Controller;
import com.sms.bus.MktreeBus;
public class act2 implements Controller {
private MktreeBus mktreeBus;
public ModelAndView handleRequest(HttpServletRequest request,
HttpServletResponse response) throws Exception {
PrintWriter ut = null;
response.setContentType("text/html;charset=utf-8");
ut = response.getWriter();
out.write(this.getMktreeBus().getmoduletree());
return null;
}
public MktreeBus getMktreeBus() {
return mktreeBus;
}
public void setMktreeBus(MktreeBus mktreeBus) {
this.mktreeBus = mktreeBus;
}
}