<%@ page contentType="text/html;charset=gb2312"%>
<jsp:useBean id="fbzw" scope="page" class="hr.run.op_fbzw" />
<%@ page import="com.xuandong.util.*" %>
<%
String userid = (String)session.getAttribute("id");
try
{
if(tool.checkperm(userid,"work_l"))
getServletContext().getRequestDispatcher("/managers/error1.jsp").forward(request,response);
}catch(Exception e){
System.out.println(e);
}
%>
<%
String mesg = "";
String submit = request.getParameter("Submit");
if (submit!=null && !submit.equals("")){
if(fbzw.getRequest(request)){
if(fbzw.insert()){
mesg = "职位提交成功!";
} else {
mesg = "数据库操作失败!";
}
}else {
mesg = "对不起,你提交的参数不正确!";
}
}
%><html>
<head>
<meta http-equiv="Content-Type" content="text/html" charset="gbk">
<title>发布新职位</title>
<!-- calendar stylesheet -->
<link rel="stylesheet" type="text/css" media="all" href="../Styles/calendar-blue.css" title="calendar-blue" />
<!-- main calendar program -->
<script type="text/javascript" src="../Js/Calendar.js"></script>
<!-- language for the calendar -->
<script type="text/javascript" src="../Js/Calendar-zh.js"></script>
<!-- the following script defines the Calendar.setup helper function, which makes
adding a calendar a matter of 1 or 2 lines of code. -->
<script type="text/javascript" src="../Js/Calendar-Setup.js"></script>
<script type="text/javascript" src="../Js/checkData.js"></script>
<script language=JavaScript>
<!--
function checkForm()
{
if(form1.dept.value=="")
{
alert("请填写招聘部门!");
form1.dept.focus();
return false;
}
if(form1.jobName.value == "")
{
alert("请填写岗位名称!");
form1.jobName.focus();
return false;
}
if(form1.deptName.value == "")
{
alert("请填选择发布区域!");
form1.deptName.focus();
return false;
}
if(!isPosIntegerStr(form1.xqrs.value))
{
alert("请检查需求人数是否正确!");
form1.xqrs.focus();
return false;
}
if(form1.jobAdd.value == "")
{
alert("请选择工作地点!");
form1.jobAdd.focus();
return false;
}
if(form1.salary.value == "")
{
alert("请选择薪酬待遇!");
form1.salary.focus();
return false;
}
if(form1.email.value.indexOf("@") == -1 || form1.email.value.indexOf(".") == -1 || form1.email.value=="")
{
alert("请检查电子邮件地址是否正确!");
form1.email.focus();
return false;
}
if(form1.closeDate.value == "")
{
alert("请选择截止日期!");
form1.closeDate.focus();
return false;
}
return true;
}
-->
</script></head>
<jsp:useBean id="fbzw" scope="page" class="hr.run.op_fbzw" />
<%@ page import="com.xuandong.util.*" %>
<%
String userid = (String)session.getAttribute("id");
try
{
if(tool.checkperm(userid,"work_l"))
getServletContext().getRequestDispatcher("/managers/error1.jsp").forward(request,response);
}catch(Exception e){
System.out.println(e);
}
%>
<%
String mesg = "";
String submit = request.getParameter("Submit");
if (submit!=null && !submit.equals("")){
if(fbzw.getRequest(request)){
if(fbzw.insert()){
mesg = "职位提交成功!";
} else {
mesg = "数据库操作失败!";
}
}else {
mesg = "对不起,你提交的参数不正确!";
}
}
%><html>
<head>
<meta http-equiv="Content-Type" content="text/html" charset="gbk">
<title>发布新职位</title>
<!-- calendar stylesheet -->
<link rel="stylesheet" type="text/css" media="all" href="../Styles/calendar-blue.css" title="calendar-blue" />
<!-- main calendar program -->
<script type="text/javascript" src="../Js/Calendar.js"></script>
<!-- language for the calendar -->
<script type="text/javascript" src="../Js/Calendar-zh.js"></script>
<!-- the following script defines the Calendar.setup helper function, which makes
adding a calendar a matter of 1 or 2 lines of code. -->
<script type="text/javascript" src="../Js/Calendar-Setup.js"></script>
<script type="text/javascript" src="../Js/checkData.js"></script>
<script language=JavaScript>
<!--
function checkForm()
{
if(form1.dept.value=="")
{
alert("请填写招聘部门!");
form1.dept.focus();
return false;
}
if(form1.jobName.value == "")
{
alert("请填写岗位名称!");
form1.jobName.focus();
return false;
}
if(form1.deptName.value == "")
{
alert("请填选择发布区域!");
form1.deptName.focus();
return false;
}
if(!isPosIntegerStr(form1.xqrs.value))
{
alert("请检查需求人数是否正确!");
form1.xqrs.focus();
return false;
}
if(form1.jobAdd.value == "")
{
alert("请选择工作地点!");
form1.jobAdd.focus();
return false;
}
if(form1.salary.value == "")
{
alert("请选择薪酬待遇!");
form1.salary.focus();
return false;
}
if(form1.email.value.indexOf("@") == -1 || form1.email.value.indexOf(".") == -1 || form1.email.value=="")
{
alert("请检查电子邮件地址是否正确!");
form1.email.focus();
return false;
}
if(form1.closeDate.value == "")
{
alert("请选择截止日期!");
form1.closeDate.focus();
return false;
}
return true;
}
-->
</script></head>
<body>
<table width="554" border="" align="center">
<tr>
<td>修改职位信息(注意:信息填写得越详细,招聘效果越好)</td>
</tr>
<% if(!mesg.equals("")){
out.println(mesg);
}%>
</table><form name="form1" method="post" action="fbxzw.jsp">
<table width="554" border="1" align="center">
<tr>
<td width="30%"> <div align="right"><strong>* 招聘部门</strong></div></td>
<td width="80%"><input type="text" name="dept">
例如:信息中心</td>
</tr>
<tr>
<td width="30%"><div align="right"><strong>* 岗位名称</strong> </div></td>
<td><input type="text" name="jobName">
例如:门店店长</td>
</tr>
<tr>
<td width="30%"><div align="right"><strong>* 发布所属区域</strong> </div></td>
<td><select name="deptName">
<option selected value="">--请选择--</option>
<option value="zongbu">总部</option>
<option value="nanjing">南京分部</option>
<option value="sunan">苏南分部</option>
<option value="suzhong">苏中分部</option>
<option value="xuhuai">徐淮分部</option>
<option value="changzhou">常州分部</option>
<option value="zhejiang">浙江分部</option>
<option value="wentai">温台分部</option>
<option value="luzhong">鲁中分部</option>
<option value="qingdao">青岛分部</option>
<option value="henan">河南分部</option>
<option value="anhui">安徽分部</option>
<option value="jiangxi">江西分部</option>
<option value="sichuan">四川分部</option>
<option value="yunnan">云南分部</option>
</select>
请填写自己所属总部或分部</td>
</tr>
<tr>
<td><div align="right"><strong>* 需求人数 </strong></div></td>
<td><input type="text" name="xqrs">
单位:人 例如:3</td>
</tr>
<tr>
<td> <div align="right"><strong> 最低学历要求 </strong> </div></td>
<td><select name="zdxl">
<option selected value="不限">--不限--</option>
<option value="高中及以下">高中及以下</option>
<option value="中专">中专</option>
<option value="专科">专科</option>
<option value="本科">本科</option>
<option value="硕士">硕士</option>
<option value="博士">博士</option>
</select></td>
</tr>
<tr>
<td> <div align="right"><strong> 要求工作年限 </strong> </div></td>
<td><select name="gznx">
<option selected value="0">--不限--</option>
<option value="1">1年以上</option>
<option value="2">2年以上</option>
<option value="3">3年以上</option>
<option value="5">5年以上</option>
<option value="10">10年以上</option>
<option value="15">15年以上</option>
</select>
单位:年 不限表示没有限制</td>
</tr>
<tr>
<td> <div align="right"><strong>* 工作地点 </strong> </div></td>
<td><select name="jobAdd">
<option selected value="">--请选择--</option>
<option value="全国">全国</option>
<option value="南京地区">南京地区</option>
<option value="苏南地区">苏南地区</option>
<option value="苏中地区">苏中地区</option>
<option value="徐淮地区">徐淮地区</option>
<option value="常州地区">常州地区</option>
<option value="浙江地区">浙江地区</option>
<option value="温台地区">温台地区</option>
<option value="鲁中地区">鲁中地区</option>
<option value="青岛地区">青岛地区</option>
<option value="河南地区">河南地区</option>
<option value="安徽地区">安徽地区</option>
<option value="江西地区">江西地区</option>
<option value="四川地区">四川地区</option>
<option value="云南地区">云南地区</option>
</select>
例如:南京地区</td>
</tr>
<tr>
<td> <div align="right"><strong>工作方式 </strong>
</div></td>
<td><select name="jobClass">
<option selected value="">--请选择--</option>
<option value="全职">全职</option>
<option value="兼职">兼职</option>
<option value="实习">实习</option>
</select>
例如:全职 </td>
</tr>
<tr>
<td> <div align="right"><strong>* 薪酬待遇 </strong> </div></td>
<td><p>
<select name="salary">
<option selected value="">--请选择--</option>
<option value="面议">面议</option>
<option value="1000元以下">1000以下</option>
<option value="1000-2000元">1000-2000</option>
<option value="2000-3000元">2000-3000</option>
<option value="3000-4000元">3000-4000</option>
<option value="4000-6000元">4000-6000</option>
<option value="6000-8000元">6000-8000</option>
<option value="8000-10000元">8000-10000</option>
<option value="10000元以上">10000以上</option>
</select>
单位:元/月</p>
</td>
</tr>
<tr>
<td> <div align="right"><strong>电子邮件 </strong>
</div></td>
<td><input name="email" type="text" value="[email protected]">
与该岗位联系的电子邮件,不填时自动使用单位注册时电子邮件 </td>
</tr>
<tr>
<td valign="top"> <div align="right"><strong>岗位具体工作描述 <br>
(限200字以内) </strong> </div></td>
<td><textarea name="jobBewrite" cols="50" rows="4" id="gzms"></textarea></td>
</tr>
<tr>
<td valign="top"> <div align="right"><strong>招聘要求及条件 <br>
(限200字以内) </strong> </div></td>
<td><textarea name="zpyq" cols="50" rows="4" id="zptj"></textarea></td>
</tr>
<tr>
<td valign="top"> <div align="right"><strong>其它可提供的待遇 <br>
(限200字以内) </strong> </div></td>
<td><textarea name="tgdy" cols="50" rows="4" id="qtdy"></textarea></td>
</tr>
<tr>
<td> <div align="right"><strong>*岗位有效期至 </strong> </div></td>
<td> <input type="text" name="closeDate" id="f_date_c" readonly="1" /><img src="../images/img.gif" id="f_trigger_c" style="cursor: pointer; border: 1px solid red;" title="Date selector"
onmouseover="this.style.background='red';" onMouseOut="this.style.background=''" /></td>
</tr>
<script type="text/javascript">
Calendar.setup({
inputField : "f_date_c", // id of the input field
ifFormat : "%Y-%m-%d", // format of the input field
button : "f_trigger_c", // trigger for the calendar (button ID)
align : "Br", // alignment (defaults to "Bl")
singleClick : true
});
</script>
<tr>
<td> <div align="right"><strong> 发布状态 </strong> </div></td>
<td><select name="releaseClass">
<option selected value="zzfb">正在发布</option>
<option value="ztfb">暂停发布</option>
</select></td>
</tr>
<tr>
<td> </td>
<td> </td>
</tr>
</table><center><input type="submit" name="Submit" value="保存以上数据并发布" onClick="javascript:(checkForm())">
<input type="reset" name="Reset" value="填写错误清空重填"></center>
</form>
</body>
</html>
<filter>
<filter-name>SetCharacterEncodingFilter</filter-name>
<filter-class>你的过滤器实现类</filter-class>
<init-param>
<param-name>encoding</param-name>
<param-value>gb2312</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>SetCharacterEncodingFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>2.编写过滤器:public class SetCharacterEncodingFilter implements javax.servlet.Filter { protected String encoding = null; protected FilterConfig filterConfig = null; protected boolean ignore = true; public SetCharacterEncodingFilter() {
} /**
* init
*
* @param filterConfig FilterConfig
* @throws ServletException
* @todo Implement this javax.servlet.Filter method
*/
public void init(FilterConfig filterConfig) throws ServletException { this.filterConfig = filterConfig;
this.encoding = filterConfig.getInitParameter("encoding");
String value = filterConfig.getInitParameter("ignore");
if (value == null)
this.ignore = true;
else if (value.equalsIgnoreCase("true"))
this.ignore = true;
else if (value.equalsIgnoreCase("yes"))
this.ignore = true;
else
this.ignore = false; }
protected String selectEncoding(ServletRequest request) { return (this.encoding); } /**
* doFilter
*
* @param servletRequest ServletRequest
* @param servletResponse ServletResponse
* @param filterChain FilterChain
* @throws IOException
* @throws ServletException
* @todo Implement this javax.servlet.Filter method
*/
public void doFilter(ServletRequest servletRequest,
ServletResponse servletResponse,
FilterChain filterChain) throws IOException,
ServletException { if (ignore || (servletRequest.getCharacterEncoding() == null)) {
String encoding = selectEncoding(servletRequest);
if (encoding != null)
servletRequest.setCharacterEncoding(encoding);
} filterChain.doFilter(servletRequest, servletResponse); } /**
* destroy
*
* @todo Implement this javax.servlet.Filter method
*/
public void destroy() { this.encoding = null;
this.filterConfig = null; }
}
使用过滤器,如果所有请求都经过一个Servlet控制分配器,那么使用Servlet的filter执行语句,将所有来自浏览器的请求(request)转换为UTF-8,因为浏览器发过来的请求包根据浏览器所在的操作系统编码,可能是各种形式编码。关键一句:
request.setCharacterEncoding("UTF-8")。
网上有此filter的源码,Jdon框架源码中com.jdon.util.SetCharacterEncodingFilter
需要配置web.xml 激活该Filter。
在JSP头部声明:<%@ page contentType="text/html;charset= UTF-8" %>。
在Jsp的html代码中,声明UTF-8:
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
设定数据库连接方式是UTF-8。例如连接MYSQL时配置URL如下:
jdbc:mysql://localhost:3306/test?useUnicode=true&characterEncoding=UTF-8
一般数据库都可以通过管理设置设定UTF-8
其他和外界交互时能够设定编码时就设定UTF-8,例如读取文件,操作XML等。
<filter>
<filter-name>Set Character Encoding</filter-name>
<filter-class>org.common.filter.EncodingFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>Set Character Encoding</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping> 过滤器类的代码如下:
package org.common.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
{public void init(FilterConfig filterConfig) throws ServletException {
}
public void doFilter(ServletRequest request, ServletResponse response,
FilterChain chain) throws IOException, ServletException {request.setCharacterEncoding("GBK");
chain.doFilter(request,response);
}public void destroy() {
}}
添加到什么地方大家不要笑话我 因为工作原因 我刚刚学习jsp 公司就让我解手这个问题 所以来请教大家
谢谢~
放在一个common包中,最主要的是把它配置到web.xml中,这样在服务器启动的时候,
就会把这个类加载进去,配置的路径是 /* ,表示对所有的请求都要经过这个类来过滤一下
按照上面说的步骤就完全可以解决了,不需要其他的操作
中文写入数据库以及从数据库中读出中文如果不经过转换,都会显示出乱码。
所以中文入库需要转换,出库时仍然需要转换。可把代码保存在一个JSP文件中,在以后需要使用时,只需在当前页面中调用此JSP页面即可
<%@include file="common/ChineseChange.jsp"%>//调用此JSP文件的代码或者把此代码写程Bean进行调用。view plaincopy to clipboardprint?
<!--出库转换-->
<%!
private String GBTocoding(String coding) {
int nError = 0;
String sError = "";
String temp = "";
try {
temp = new String(coding.getBytes("gb2312"), "iso8859-1");
} catch(java.io.UnsupportedEncodingException err) {
sError = err.getMessage();
nError = 1;
} finally {
if(nError == 1)
return "";
else
return temp;
}
}
%>
<!--入库转换-->
<%!
private String codingToGB(String coding) {
int nError = 0;
String sError = "";
String temp = "";
try {
temp = new String(coding.getBytes("iso8859_1"), "gb2312");
} catch(java.io.UnsupportedEncodingException err) {
sError = err.getMessage();
nError = 1;
} finally {
if(nError == 1)
return "";
else
return temp;
}
}
%>
就是建立一个类EncodingFilter ,在web.xml中加上上面说的那几行,把这个类的路径给指正确,
就OK啦!!!ps:你的msn不对哈,呵呵
可以加我 教教我嘛
轉換器也是UTF8