我的SSH项目之旅(1.基本配置)

  SSH主要是配置文件比较复杂 不过都有一个通用的模式,很多东西都是固定不变的,除了eclipse帮我们自动生成一些,其余只要注意一定的写法就可行
一开始把几个重要的配置文件写好


applicationContext.xml
<? 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 = "dataSource"
class = "org.springframework.jndi.JndiObjectFactoryBean" >
< property name = "jndiName" >
< value > java:comp/env/jdbc/myssh </ value >
</ property >
</ bean >
< bean id = "sessionFactory"
class = "org.springframework.orm.hibernate3.LocalSessionFactoryBean" >
< property name = "dataSource" >
< ref bean = "dataSource" />
</ property >
< property name = "hibernateProperties" >
< props >
< prop key = "hibernate.dialect" >
org.hibernate.dialect.MySQLDialect
</ prop >
<!-- 表示允许自动提交 -->
<prop key="hibernate.connection.autocommit">true</prop>
<!-- 显示sql语句 -->
<prop key="hibernate.show_sql">true</prop>
</props>
</property>
</bean>
加入hibernate模板支持
<bean id="hibernateTemplate" class="org.springframework.orm.hibernate3.HibernateTemplate">
<property name="sessionFactory">
<ref bean="sessionFactory"/></property>
</bean>

</ beans >



Web.xml

<? xml version = "1.0" encoding = "UTF-8" ?>
xmlns:xsi = "http://www.w3.org/2001/XMLSchema-instance" version = "2.4"
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>
/WEB-INF/classes/applicationContext.xml
</param-value>
</context-param>
<servlet>
<servlet-name>context</servlet-name>
<servlet-class>
org.springframework.web.context.ContextLoaderServlet
</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>


< servlet >
< servlet-name > action </ servlet-name >
< servlet-class >
org.apache.struts.action.ActionServlet
</ servlet-class >
< init-param >
< param-name > config </ param-name >
< param-value > /WEB-INF/struts-config.xml </ param-value >
</ init-param >
< init-param >
< param-name > debug </ param-name >
< param-value > 3 </ param-value >
</ init-param >
< init-param >
< param-name > detail </ param-name >
< param-value > 3 </ param-value >
</ init-param >
< load-on-startup > 0 </ load-on-startup >
</ servlet >
< servlet-mapping >
< servlet-name > action </ servlet-name >
< url-pattern > *.do </ url-pattern >
</ servlet-mapping >
</ web-app >


在添加struts插件支持
Struts-config.xml

<?xml version="1.0" encoding="UTF-8"?>
<! DOCTYPE struts-config PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 1.2//EN" "http://struts.apache.org/dtds/struts-config_1_2.dtd" >

< struts-config >
< data-sources />
< form-beans />
< global-exceptions />
< global-forwards />
< action-mappings />
<controller processorClass="org.springframework.web.struts.DelegatingRequestProcessor">
</controller>

< message-resources
parameter = "dj.fantlam.myssh.struts.ApplicationResources" />

和spring进行整合,这是struts添加外插件的方法 
<plug-in 
   className="org.springframework.web.struts.ContextLoaderPlugIn">
<set-property property="contextConfigLocation" 
  value="/WEB-INF/classes/applicationContext.xml" />
</plug-in>
</ struts-config >
 
 
编写过滤器进行乱码处理

EncodingFilter.java

package dj.fantlam.myssh.filter;

import java.io.IOException;

import javax.servlet.Filter;
import javax.servlet.FilterChain;
import javax.servlet.FilterConfig;
import javax.servlet.ServletException;
import javax.servlet.ServletRequest;
import javax.servlet.ServletResponse;

public class EncodingFilter implements Filter {
  private String charset = null;

  public void destroy() {
    // TODO Auto-generated method stub

  }

  public void doFilter(ServletRequest arg0, ServletResponse arg1,
      FilterChain arg2) throws IOException, ServletException {
    // TODO Auto-generated method stub
    arg0.setCharacterEncoding(this.charset);
    arg2.doFilter(arg0, arg1);

  }

  public void init(FilterConfig arg0) throws ServletException {
    // TODO Auto-generated method stub
    this.charset=arg0.getInitParameter("charset");

  }

}


Web.xml

<? xml version = "1.0" encoding = "UTF-8" ?>
  xmlns:xsi = "http://www.w3.org/2001/XMLSchema-instance" version = "2.4"
  < context-param >
    < param-name > contextConfigLocation </ param-name >
    < param-value >
      /WEB-INF/classes/applicationContext.xml
    </ param-value >
  </ context-param >

 
这个是最经典的字符过滤方法了
  <filter>
    <filter-name>encoding</filter-name>
    <filter-class>
      dj.fantlam.myssh.filter.EncodingFilter
    </filter-class>
    <init-param>
      <param-name>charset</param-name>
      <param-value>gbk</param-value>
    </init-param>
  </filter>
  <filter-mapping>
    <filter-name>encoding</filter-name>
    <url-pattern>/*</url-pattern>
  </filter-mapping>


  < servlet >
    < servlet-name > context </ servlet-name >
    < servlet-class >
      org.springframework.web.context.ContextLoaderServlet
    </ servlet-class >
    < load-on-startup > 1 </ load-on-startup >
  </ servlet >



  < servlet >
    < servlet-name > action </ servlet-name >
    < servlet-class >
      org.apache.struts.action.ActionServlet
    </ servlet-class >
    < init-param >
      < param-name > config </ param-name >
      < param-value > /WEB-INF/struts-config.xml </ param-value >
    </ init-param >
    < init-param >
      < param-name > debug </ param-name >
      < param-value > 3 </ param-value >
    </ init-param >
    < init-param >
      < param-name > detail </ param-name >
      < param-value > 3 </ param-value >
    </ init-param >
    < load-on-startup > 0 </ load-on-startup >
  </ servlet >
  < servlet-mapping >
    < servlet-name > action </ servlet-name >
    < url-pattern > *.do </ url-pattern >
  </ servlet-mapping >
</ web-app >

MD5加密

加入 MD5 支持,为了数据安全,因为不加一旦被黑,所有数据都被看到

不可逆向,为程序的安全性作保障

验证码 image.jsp

防止灌水



使用模板 temp.jsp 拷贝它做新的 JSP 页面

temp.html 做新的 HTML 页面

文件存放目录   分页 split_page.jsp







数据源配制

tomcat servlet.xml 文件加入



    <Context path="/myssh" docBase="E:/JAVA/SSHworkspace/MySSH/WebRoot"

    debug="5" reloadable="true" crossContext="true">



  <Logger className="org.apache.catalina.logger.FileLogger"

          prefix="localhost_MysqlTest_log." suffix=".txt"

          timestamp="true"/>

         

  <Resource name="jdbc/myssh" auth="Container" type="javax.sql.DataSource"/>

 

  <ResourceParams name="jdbc/myssh">

    <parameter>

      <name>factory</name>

      <value>org.apache.commons.dbcp.BasicDataSourceFactory</value>

    </parameter>

    <parameter>

      <name>maxActive</name>

      <value>100</value>

    </parameter>

    <parameter>

      <name>maxIdle</name>

      <value>30</value>

    </parameter>

    <parameter>

      <name>maxWait</name>

      <value>5000</value>

    </parameter>

    <parameter>

      <name>username</name>

      <value>root</value>

    </parameter>

    <parameter>

      <name>password</name>

      <value>123456</value>

    </parameter>

    <parameter>

      <name>driverClassName</name>

      <value>org.gjt.mm.mysql.Driver</value>

    </parameter>

    <parameter>

      <name>url</name>

      <value>jdbc:mysql://localhost:3306/myssh</value>

    </parameter>
    </ResourceParams>
  </Context>
    </Host>
  </Engine>

</Service>
</Server>

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值