web,xml应用文件

1.<filter>参数

    <filter>
<filter-name>encodingFilter</filter-name>
<filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>
<init-param>
<param-name>encoding</param-name>
<param-value>UTF-8</param-value>
</init-param>
<init-param>
<param-name>forceEncoding</param-name>
<param-value>true</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>encodingFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
<!--多数据源支持监听 -->

java服务端:  每一个file对应一个具体的类,他会在web应用的servlet应用之响应

 /*** Eclipse Class Decompiler plugin, copyright (c) 2012 Chao Chen (cnfree2000@hotmail.com) ***/
package org.springframework.web.filter; import java.io.IOException;
import javax.servlet.FilterChain;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse; public class CharacterEncodingFilter extends OncePerRequestFilter {
private String encoding;
private boolean forceEncoding = false; public void setEncoding(String encoding) {
this.encoding = encoding;
} public void setForceEncoding(boolean forceEncoding) {
this.forceEncoding = forceEncoding;
} protected void doFilterInternal(HttpServletRequest request,
HttpServletResponse response, FilterChain filterChain)
throws ServletException, IOException {
if ((this.encoding != null)
&& (((this.forceEncoding) || (request.getCharacterEncoding() == null)))) {
request.setCharacterEncoding(this.encoding);
if (this.forceEncoding) {
response.setCharacterEncoding(this.encoding);
}
}
filterChain.doFilter(request, response);
}
}

案例二xml

<!--多数据源支持监听  -->
<filter>
<filter-name>dataSourceFilter</filter-name>
<filter-class>cn.jasgroup.jasframework.dataaccess.filter.DataSourceFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>dataSourceFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>

java服务器端

/*** Eclipse Class Decompiler plugin, copyright (c) 2012 Chao Chen (cnfree2000@hotmail.com) ***/
package cn.jasgroup.jasframework.dataaccess.filter; import cn.jasgroup.jasframework.dataaccess.observer.DataSourceObserver;
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;
import javax.servlet.http.HttpServletRequest; public class DataSourceFilter implements Filter {
public void destroy() {
} public void doFilter(ServletRequest request, ServletResponse response,
FilterChain filterChain) throws IOException, ServletException {
HttpServletRequest req = (HttpServletRequest) request;
String datasource = req.getParameter("dataSourceName");
if ((datasource != null) && (!("".equals(datasource)))) {
DataSourceObserver.setDataSourceName(datasource);
}
filterChain.doFilter(request, response);
} public void init(FilterConfig arg0) throws ServletException {
}
}

respoonser实例

/**
* 查询任意圈定区域所在工区信息
*
* @param request
* @param response
* @return
* @throws IOException
*/
@RequestMapping("/queryWorkareaInfo")
@ResponseBody
public void queryWorkareaInfo(HttpServletRequest request, HttpServletResponse response) throws IOException {
WorkareaInfoBo winfoBo = new WorkareaInfoBo();
String workareaName = request.getParameter("workareaName"); String wellIds = request.getParameter("wellIds");
String wellNames = request.getParameter("wellNames");
try {
wellNames = URLDecoder.decode(wellNames, "UTF-8");
} catch (UnsupportedEncodingException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} // 生产层位
String cengwei = request.getParameter("cengwei"); String date_start = request.getParameter("date_start");
String date_end = request.getParameter("date_end");
if (StringUtils.isNotBlank(cengwei)) {
try {
cengwei = URLDecoder.decode(cengwei, "UTF-8");
} catch (UnsupportedEncodingException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
if (!cengwei.equals("所有层位")) {
String cengwei_wellname = "";
String[] wellarr = wellNames.split(";");
wellNames="";
for (String val : wellarr) {
cengwei_wellname += "'" + val + "',";
}
cengwei_wellname += "@";
cengwei_wellname = cengwei_wellname.replace(",@", ""); // cengwei = getChildren(cengwei); // wellNames = "";
// String hql_per = "from Perforationdata where perforationposition in('" + cengwei + "') and wellnum in("
// + cengwei_wellname + ")";
String hql_per = "select distinct(jh) from YCSY_NEWHORIZON where cw in('" + cengwei + "') and jh in("
+ cengwei_wellname + ")"; List<NewHorizon> list = workareaInfoService.queryPerforation(hql_per);
for (Iterator iterator = list.iterator(); iterator.hasNext();) {
NewHorizon perforationdata = (NewHorizon) iterator.next();
wellNames += perforationdata.getJh() + ";";
}
}
}
// 生产层位end
/*
* try { wellNames = new
* String(wellNames.getBytes("ISO-8859-1"),"UTF-8"); } catch
* (UnsupportedEncodingException e1) { // TODO Auto-generated catch
* block e1.printStackTrace(); }
*/ Map<String, Object> map = new HashMap<String, Object>();
PageRequest pageRequest = this.getPage(request);
System.out.println(pageRequest + "=pageRequest");
// 根据工区名称查询所有井名称
if (!"".equals(workareaName) && null != workareaName) {
String str = "from Wellinfo where workArea = '" + workareaName + "'";
List<Wellinfo> wellInfoList = workareaInfoService.queryWellinfoList(pageRequest, str);
if (wellInfoList.size() > 0) {
String wellNum = "";
for (int i = 0; i < wellInfoList.size(); i++) {
wellNum = wellInfoList.get(i).getWellName();
wellIds += wellNum + ";";
}
}
}
String hql = joinHql(wellNames, workareaName);
String cyhql = "";
String zshql = "";
if (StringUtils.isNotBlank(workareaName)) {
cyhql = "from Wellinfo where wellType <> '注水井' and workArea = '" + workareaName + "'";
zshql = "from Wellinfo where wellType like '%注水%' and workArea = '" + workareaName + "'";
} else if (StringUtils.isNotBlank(wellIds)) {
cyhql = joinCyWellHql(wellIds);
zshql = joinZsWellHql(wellIds);
} else if (StringUtils.isNotBlank(wellNames)) {
cyhql = joinCyWellHqlName(wellNames);
zshql = joinZsWellHqlName(wellNames);
}
WorkareaInfoBo wibo = workareaInfoService.queryWorkareaInfo(pageRequest, hql + "@" + cyhql + "@" + zshql,
date_start, date_end, wellNames,cengwei);
String sql = "select tmcl cl ,qkzymj mj from ycab03 where qkmc = '东仁沟区'and gxsj=(select max(gxsj) gxsj from ycab03 where qkmc = '东仁沟区')";
List<AreaSeartH> ah = dataReportService.queryAreaAndChuliangServer(sql,AreaSeartH.class);
JSONObject obj = new JSONObject();
DecimalFormat df=new DecimalFormat("0.00");
if(ah.size()>0){
double yujichuliang;
double suoxuanmianji;
obj.put("dzreserves", ah.get(0).getCl());
obj.put("workarea", ah.get(0).getMj());
if(StringUtils.isNotEmpty(ah.get(0).getCl())&&StringUtils.isNotEmpty(wibo.getOilWellNum())){
yujichuliang = Double.parseDouble(ah.get(0).getCl())/1137*Double.parseDouble(wibo.getOilWellNum());
obj.put("guessGeologicla",df.format(yujichuliang));
}else{
obj.put("guessGeologicla", "0.00");
}
if(StringUtils.isNotEmpty(ah.get(0).getMj())&&StringUtils.isNotEmpty(wibo.getOilWellNum())){
suoxuanmianji = Double.parseDouble(ah.get(0).getMj())/1137*Double.parseDouble(wibo.getOilWellNum());
obj.put("calculatearea",df.format(suoxuanmianji));
}else{
obj.put("calculatearea", "0.00");
}
}else{
obj.put("dzreserves", "0.00");
obj.put("workarea", "0.00");
}
obj.put("endDate", wibo.getEndDate());
obj.put("injectWaterNum",wibo.getInjectWaterNum());
obj.put("productOilNum",wibo.getProductOilNum());
obj.put("oilWellNum",wibo.getOilWellNum());
obj.put("startDate", wibo.getStartDate());
obj.put("waterWellNum", wibo.getWaterWellNum());
obj.put("wellNames", wibo.getWellNames());
obj.put("yeliang",wibo.getYeliang()); obj.put("currcyou", wibo.getCurrcyou());
obj.put("currzshui",wibo.getCurrzshui());
obj.put("curryeliang", wibo.getCurryeliang());
response.getWriter().write(obj.toString());
response.getWriter().flush();
response.getWriter().close();
}

servlet应用具体实例的更多相关文章

  1. 每一个Servlet只有一个实例,多个线程

    每一个Servlet只有一个实例,多个线程: Servlet: package com.stono.servlet.synchronize; import javax.servlet.http.Htt ...

  2. JSP+JavaBean+Servlet工作原理实例…

    JSP+JavaBean+Servlet工作原理实例讲解 首先,JavaBean和Servlet虽都是Java程序,但是是完全不同的两个概念.引用mz3226960提出的MVC的概念,即M-model ...

  3. JSP+servlet简单登录实例

    一个简单的jsp+servlet实例,实现简单的登录 转载▼ http://blog.sina.com.cn/s/blog_5c5bc9070100z7wb.html     开发环境myeclips ...

  4. Tomcat+Servlet登录页面实例

    概念   Tomcat server是一个免费的开放源码的Web 应用server,属于轻量级应用server,在中小型系统和并发訪问用户不是非常多的场合下被普遍使用,是开发和调试JSP 程序的首选. ...

  5. (详细)Eclips+jsp+servlet+mysql+登录实例+源代码

    欢迎任何形式的转载,但请务必注明出处. 该教程较全,从软件的安装以及相关的环境配置我都放置了相关教程的链接,读者可直接点击进入.自己写电商网站作业时查找了很多资料,但都不是很全,所以趁着寒假写了这份教 ...

  6. Javabean+servlet+JSP(html)实例应用

    大家都知道Javabean+servlet+JSP是最简单的MVC模式.的确,在一个小型的项目中,这个模式完全够用. 它优雅并且简洁.加上jQueryui的完美展示效果,让这个模式看起来非常合适.当然 ...

  7. Servlet程序开发--实例操作:MVC设计模式应用

    以前做过一个登录程序,是用JSP+JavaBean完成的,最大的问题,JSP文件内容太多了. 1. VO 2. DBC 3. DAO 3.1 impl 3.2 proxy 4. Factory 5. ...

  8. Servlet的HelloWorld实例

    以下内容引用自http://wiki.jikexueyuan.com/project/servlet/first-example.html: Servlets是Java类,服务于HTTP请求并实现了j ...

  9. Servlet学习(三)——实例:用户登录并记录登陆次数

    1.前提:在Mysql数据库下建立数据库web13,在web13下创建一张表user,插入几条数据如下: 2.创建HTML文件,命名为login,作为登录界面(以post方式提交) <!DOCT ...

随机推荐

  1. C/C++中的可变参函数

    可变参函数最好的实例:printf();参数可变 包含的头文件: C语言中:#include<stdarg.h> C++中的可变参的头文件:#include<cstdarg>, ...

  2. C++中的lambda表达式

    1.基本形式: [捕获列表](参数列表){函数体};     其中捕获列表和函数体不能省略但是捕获列表可以为空,也就是说最简单的lambda表达式是:  []{}; 2.lambda表达式又叫匿名函数 ...

  3. AvalonDock 2.0+Caliburn.Micro+MahApps.Metro实现Metro风格插件式系统(二)

    上次已经建立了可运行的基本框架,这篇就说说怎么把我们自定义的View自动加载并添加到AvalonDock里面,AvalonDock里有3种类型的UI部件,Document, DockableConte ...

  4. java集合类(二)List学习

    接上篇  java集合类(一) List接口继承了Collection接口和Iterable接口,即同样含有Collection和 Iterable的特性,还有方法,其基本方法有: 1)有关添加: b ...

  5. SCRUM团队的三个角色

    Scrum团队中包括三个角色,他们分别是产品负责人.开发团队和 Scrum Master. Scrum 团队是自组织.跨职能的完整团队.自组织团队决定如何最好地完成他们的工作,而不是由团队外的其他人来 ...

  6. VMware vSphere HyperVisor安装过程记录

      作者:sdjnzqr 出处:http://www.cnblogs.com/sdjnzqr/ 版权:本文版权归作者和博客园共有 转载:欢迎转载,但未经作者同意,必须保留此段声明:必须在文章中给出原文 ...

  7. 剑指offer--面试题11

    题目:求数值的整数次方,不考虑大数值情况 即实现函数:double Power(double base, int exponent) 自己所写代码如下: #include "stdafx.h ...

  8. [CF]codeforces round#366(div2)滚粗记

    开场心理活动:啊打完这场大概有1700了吧 中途心理活动:啊这个ABC看起来都随便做啊 死亡原因:欸怎么没网了 -75 .. A [题意]Hulk说完一句I hate会说that I love 然后是 ...

  9. java 页面换行处理

    在taxtarea中输入的文本.如果含有回车或空格.在界面上显示的时候则不哪么正常.回车消失了,空格变短了. 如何解决这个问题呢.有2种方法. 1.使用<pre>标签 w3c对pre元素是 ...

  10. c# 与 Unity3d 中的序列化

    圣典中对于Unity3D的序列化介绍很容易和C#的序列化介绍搞混,做个笔记,方便以后查找. 很多资料算是拾人牙慧. 一.Serializable 序列化 Inherits from Attribute ...