- 浏览: 181193 次
- 性别:
- 来自: 西安
-
文章分类
- 全部博客 (163)
- POI (8)
- Collection容器 (1)
- java.util (2)
- java调用批处理 (1)
- xml (1)
- jfreechart (3)
- SVN (1)
- tomcat中文 (1)
- jquery (6)
- Log4j (1)
- ppt (1)
- js (48)
- ss (1)
- 综合 (1)
- Spring (2)
- 数据库 (6)
- tomcat (1)
- commons-lang包使用 (1)
- AJAX【Jquery】 (3)
- RMI (2)
- OpenLayers (25)
- html (20)
- css (25)
- Google地图 (2)
- java (1)
- Ibatis (1)
- GoogleMaps (1)
- J2EE (2)
- 软件设计 (1)
- 服务器 (1)
- html5 (4)
- cursor (1)
- AngularJs (5)
- 缓存 (1)
- 构建 (2)
- 域名、空间、服务器 (1)
收藏列表
- 全部 [49]
- 默认 [3]
- struts2 [2]
- spring [2]
- javascript [2]
- jquery [5]
- java [4]
- tomcat [1]
- jsp [2]
- 泛型 [4]
- web [10]
- html [1]
- css [3]
- svn [2]
- toolkit [1]
- 收藏夹 [1]
- io流 [1]
- 中文过滤器 [2]
- web,jsp [2]
- 【jsp+servlet】 [1]
标题 | 标签 | 来源 | |
抓取网站源码 | web,jsp | ||
public static void main(String[] args) throws Exception { String sCurrentLine = ""; String sTotalString = ""; java.io.InputStream l_urlStream; java.net.URL l_url = new java.net.URL("http://www.hao123.com"); java.net.HttpURLConnection l_connection = (java.net.HttpURLConnection) l_url .openConnection(); l_connection.connect(); l_urlStream = l_connection.getInputStream(); java.io.BufferedReader l_reader = new java.io.BufferedReader( new java.io.InputStreamReader(l_urlStream, "UTF-8")); while ((sCurrentLine = l_reader.readLine()) != null) { sTotalString += sCurrentLine; } System.out.println(sTotalString); } |
|||
文件上传组件【jsp+Servlet】 | 【jsp+servlet】 | Servlet实现文件上传下载 | |
① 客户端必须以二进制形式提交数据 a) 在form表单中添加enctype=“multipart/from-data“ b) ②当在表单中添加enctype,request中提交的数据形式就发生了改变,我们就不能以request.getParameter这种方式接受数据了,我们需要对request中接受的数据进行处理后才能接受 接受客户端提交的文件的方式有两种: ① fileupload上传:依赖于commons包中的jar文件 a) 将四个jar文件导入工程文件中 //在Servlet接受页面提交的数据 //通过传统的request接受方式,我们只能够接收到客户端提交的文本信息 //如果客户端想服务器端提交一个文件,服务器端则无法接受提交的文件 // String file=req.getParameter("myFile"); // String des=req.getParameter("des"); // System.out.println(file+"<><><>\n"+"<><><>"+des); try { //创建一个临时指定临时文件夹存放 DiskFileItemFactory temp=new DiskFileItemFactory(1000,new File("D:/file")); //创建上传工具--接受客户端上传的文件 ServletFileUpload sfu=new ServletFileUpload(temp); //通过上传工具对request中的数据进行处理 //因为用户提交的所有数据都是通过request提交,那么我们可以通过上传工具取到request中的所有数据,存放到一个集合中 List list=sfu.parseRequest(request); //遍历集合,取到集合中文件或者字段 Iterator it= list.iterator(); while (it.hasNext()) { FileItem fi = (FileItem) it.next(); //判断每一个条目是文件还是字段 if(fi.isFormField()){ //如果是一个字段,则取到字段名和字段值 String fileName=fi.getFieldName(); String fileValue=fi.getString("GBK"); System.out.println(fileName+"<><><><"+fileValue); }else{ //如果不是字段,则表示fi是一个文件,我们需要获取文件的名字,然后把文件保存到指定的目录 String path=fi.getName(); String fileName=path.substring(path.lastIndexOf("\\")+1); String savePath=getServletContext().getRealPath("/file/")+"/"+fileName; fi.write(new File(savePath)); } } } catch (FileUploadException e) { e.printStackTrace(); } catch (Exception e) { e.printStackTrace(); } ② SmartUpload上传:依赖于一个第三方架包SmartUpload.jar包 //创建解析工具 SmartUpload su = new SmartUpload(); //通过工具对request中的数据进行初始化 su.initialize(getServletConfig(), request, response); //设置上传文件是限制信息:设置允许上传的单个文件的最大值,设置允许上传文件的类型 su.setMaxFileSize(1024*1024*10); su.setAllowedFilesList("jpg,jpeg,bmp,gif,png"); //开始接收客户端的上传 su.upload(); //取到上传的所有文件(files相当于一个集合) Files fs = su.getFiles(); //取到fs中文件的个数 for (int i = 0; i < fs.getCount(); i++) { File f = fs.getFile(i); String fName = f.getFileName(); //取到服务器上的files文件夹的路径 String savePath = getServletContext().getRealPath("/file")+"/"+fName; f.saveAs(savePath); } //从su不能够直接取到字段,但是我们可以取到一个经过处理了的request对象 Request req = su.getRequest(); String des = req.getParameter("des"); System.out.println(des); //上传成功之后跳转到列表页面,在列表页面中显示files文件夹中的所有文件 String path = getServletContext().getRealPath("/file"); java.io.File dir = new java.io.File(path); String[] names = dir.list(); List<String> fileNames = new ArrayList<String>(); for (int i = 0; i < names.length; i++) { fileNames.add(names[i]); } request.setAttribute("ns", fileNames); request.getRequestDispatcher("list.jsp").forward(request, response); 文件下载: //接受客户端需要下载的文件的文件名 String name=request.getParameter("fname"); String path=getServletContext().getRealPath("/file")+"/"+name; InputStream is=new FileInputStream(path); OutputStream os=response.getOutputStream(); response.setContentType("application/exe.pdf"); response.addHeader("Content-Disposition", "attachment;filename="+name); byte[] b=new byte[500]; int len=-1; while((len=is.read(b))!=-1){ os.write(b, 0, len); os.flush(); } os.close(); ------------------------------------------------------------------------------------------------------------ package com.jsp.upload.servlet; import java.io.File; import java.io.IOException; import java.text.SimpleDateFormat; import java.util.Date; import java.util.Iterator; import java.util.List; import javax.servlet.ServletException; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import org.apache.commons.fileupload.FileItem; import org.apache.commons.fileupload.FileUploadException; import org.apache.commons.fileupload.disk.DiskFileItemFactory; import org.apache.commons.fileupload.servlet.ServletFileUpload; public class JspUploadServlet extends HttpServlet { /** * */ private static final long serialVersionUID = 1L; public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { this.doPost(request, response); } public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { response.setContentType("text/html;charset=UTF-8"); String method = request.getParameter("method"); if ("upload".equals(method)) { upload(request, response); } } @SuppressWarnings("unchecked") public void upload(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { File tempFile = null; try { // 创建一个临时指定临时文件夹存放,函数调用完应该将临时文件删除,这样能节约空间。 tempFile = new File("C:/file"); if (!tempFile.exists()) { tempFile.mkdir(); } DiskFileItemFactory temp = new DiskFileItemFactory(1000, tempFile); // 创建上传工具--接受客户端上传的文件 ServletFileUpload sfu = new ServletFileUpload(temp); // 通过上传工具对request中的数据进行处理 // 因为用户提交的所有数据都是通过request提交,那么我们可以通过上传工具取到request中的所有数据,存放到一个集合中 List list = sfu.parseRequest(request); // 遍历集合,取到集合中文件或者字段 Iterator it = list.iterator(); while (it.hasNext()) { FileItem fi = (FileItem) it.next(); // 判断每一个条目是文件还是字段 if (fi.isFormField()) { // 如果是一个字段,则取到字段名和字段值 String fileName = fi.getFieldName(); String fileValue = fi.getString("GBK"); } else { // 如果不是字段,则表示fi是一个文件,我们需要获取文件的名字,然后把文件保存到指定的目录 String path = fi.getName(); String fileName = path .substring(path.lastIndexOf("\\") + 1); String savePath = getServletContext().getRealPath("/file/"); File file = new File(savePath); if (!file.exists()) { file.mkdirs(); } savePath = file.getPath() + "/" + fileName; fi.write(new File(savePath)); fi.getOutputStream().close(); } } } catch (FileUploadException e) { e.printStackTrace(); } catch (Exception e) { e.printStackTrace(); } finally { cycleDelFile(tempFile); } } /** * 获取指定格式的日期。 * * @param date * @return */ public static String dateFormat(Date date) { SimpleDateFormat format = new SimpleDateFormat("yyyyMMdd_hhmmss"); String time = format.format(date); if (!isNull(time)) { return time; } return null; } /** * 文件重命名。 * * @param filename * @return */ public String renameFile(String filename) { String fileExtendname = ""; if (null != filename && !"".equals(filename)) { Date date = new Date(); int indexOfDot = filename.indexOf("."); fileExtendname = filename.substring(indexOfDot + 1); return dateFormat(date) + "." + fileExtendname; } return null; } /** * 循环删除文件。 * * @param file */ public void cycleDelFile(File file) { if (file.isDirectory()) { File[] files = file.listFiles(); for (File fl : files) { cycleDelFile(fl); } file.delete(); } else { file.delete(); } } public static boolean isNull(String str) { return "".equals(str) || null == str; } } Jar: commons-fileupload-1.2.1.jar commons-io-1.4.jar commons-logging-1.0.4.jar |
|||
java系统中的百分数使用 | java | ||
import java.text.NumberFormat; public class NumFormat { public static void main(String[] args) { double a=1; double b=3; System.out.println(percent(a, b)); } public static String percent(double num1,double num2){//创建获取两个数的百分比芳芳 String str = "";//创建字符串对象 double num3 = num1 / num2;//获取两个参数的商 NumberFormat numFormat = NumberFormat.getPercentInstance();//返回当前默认语言环境的百分比格式 numFormat.setMinimumFractionDigits(2);//设置百分数的小数部分所允许的最小位数,如果将参数设置为负数,则使用0 str = numFormat.format(num3);//格式规范 return str; } } |
|||
applicationContext.xml | spring | ||
<?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.5.xsd"> <bean id="dataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource"> <property name="driverClassName" value="com.mysql.jdbc.Driver"></property> <property name="url" value="jdbc:mysql://127.0.0.1:3306/laohutu"></property> <property name="username" value="root"></property> <property name="password" value="root"></property> </bean> <bean id="sessionFactory" class="org.springframework.orm.hibernate3.LocalSessionFactoryBean"> <property name="dataSource" ref="dataSource"></property> <property name="hibernateProperties"> <props> <prop key="hibernate.dialect"> org.hibernate.dialect.MySQLDialect </prop> <prop key="hibernate.hbm2ddl.auto"> update </prop> <prop key="hibernate.show_sql"> true </prop> <prop key="hibernate.format_sql"> true </prop> </props> </property> <property name="mappingResources"> <list> <value>com/hutu/po/Dept.hbm.xml</value> </list> </property> </bean> <bean id="transactionManager" class="org.springframework.orm.hibernate3.HibernateTransactionManager"> <property name="sessionFactory" ref="sessionFactory"></property> </bean> <bean id="transactionInterceptor" class="org.springframework.transaction.interceptor.TransactionProxyFactoryBean"> <property name="transactionManager" ref="transactionManager"></property> <property name="transactionAttributes"> <props> <prop key="save*">PROPAGATION_REQUIRED</prop> <prop key="delete*">PROPAGATION_REQUIRED</prop> <prop key="update*">PROPAGATION_REQUIRED</prop> <prop key="find*">PROPAGATION_REQUIRED,readOnly</prop> </props> </property> </bean> <!-- ֻהӔserviceޡβքbeanط˂ϱԦm --> <bean class="org.springframework.aop.framework.autoproxy.BeanNameAutoProxyCreator"> <property name="proxyTargetClass" > <value>true</value> </property> <property name="beanNames"> <value>*service</value> </property> <property name="interceptorNames"> <list> <value>transactionInterceptor</value> </list> </property> </bean> <bean id="deptdao" class="com.hutu.dao.DeptDao"> <property name="sessionFactory" ref="sessionFactory"></property> </bean> <bean id="deptservice" class="com.hutu.service.DeptService"> <property name="deptdao" ref="deptdao"></property> </bean> <bean id="deptaction" class="com.hutu.action.DeptAction"> <property name="deptservice" ref="deptProxy"></property> </bean> </beans> |
|||
servlet upload | |||
/** * Servlet端处理文件输出下载 * * @param request * @param response * @throws IOException * @throws Exception */ public void downloadFile(HttpServletRequest request, HttpServletResponse response) throws IOException { response.reset();// 可以加也可以不加 response.setContentType("application/x-download"); String fileName = "Template.xlsx"; String fileDownloadPath = request.getSession().getServletContext() .getRealPath("/excel/" + fileName); fileName = URLEncoder.encode(fileName, "UTF-8"); response.addHeader("Content-Disposition", "attachment;filename=" + fileName); OutputStream outp = null; // 输出流 FileInputStream in = null; // 文件输入流 try { outp = response.getOutputStream(); in = new FileInputStream(fileDownloadPath); byte[] b = new byte[1024]; int i = 0; while ((i = in.read(b)) > 0) { // 将指定字节数组中从 off 开始的 len个字节,写到当前输出流。 outp.write(b, 0, i); } // 刷新当前输出流,将任何缓冲输出的字节输出到此流中。 outp.flush(); } catch (Exception e) { e.printStackTrace(); } finally { if (in != null) { in.close(); in = null; } if (outp != null) { outp.close(); outp = null; } } } |
|||
EL表达式获取字符串长度 | web,jsp | ||
${fn:substring(wjcd.lrsj, 0, 16)} 使用functions函数来获取list的长度 ${fn:length(list)} <c:if test="${fn:length(character) > 19 }"> </c:if> <%@taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%> <%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions" %> 函数名 函数说明 使用举例 fn:contains 判断字符串是否包含另外一个字符串 <c:if test="${fn:contains(name, searchString)}"> fn:containsIgnoreCase 判断字符串是否包含另外一个字符串(大小写无关) <c:if test="${fn:containsIgnoreCase(name, searchString)}"> fn:endsWith 判断字符串是否以另外字符串结束 <c:if test="${fn:endsWith(filename, ".txt")}"> fn:escapeXml 把一些字符转成XML表示,例如 <字符应该转为< ${fn:escapeXml(param:info)} fn:indexOf 子字符串在母字符串中出现的位置 ${fn:indexOf(name, "-")} fn:join 将数组中的数据联合成一个新字符串,并使用指定字符格开 ${fn:join(array, ";")} fn:length 获取字符串的长度,或者数组的大小 ${fn:length(shoppingCart.products)} fn:replace 替换字符串中指定的字符 ${fn:replace(text, "-", "•")} fn:split 把字符串按照指定字符切分 ${fn:split(customerNames, ";")} fn:startsWith 判断字符串是否以某个子串开始 <c:if test="${fn:startsWith(product.id, "100-")}"> fn:substring 获取子串 ${fn:substring(zip, 6, -1)} fn:substringAfter 获取从某个字符所在位置开始的子串 ${fn:substringAfter(zip, "-")} fn:substringBefore 获取从开始到某个字符所在位置的子串 ${fn:substringBefore(zip, "-")} fn:toLowerCase 转为小写 ${fn.toLowerCase(product.name)} fn:toUpperCase 转为大写字符 ${fn.UpperCase(product.name)} fn:trim 去除字符串前后的空格 ${fn.trim(name)} 函数描述 fn:contains(string, substring) 如果参数string中包含参数substring,返回true fn:containsIgnoreCase(string, substring) 如果参数string中包含参数substring(忽略大小写),返回true fn:endsWith(string, suffix) 如果参数 string 以参数suffix结尾,返回true fn:escapeXml(string) 将有特殊意义的XML (和HTML)转换为对应的XML character entity code,并返回 fn:indexOf(string, substring) 返回参数substring在参数string中第一次出现的位置 fn:join(array, separator) 将一个给定的数组array用给定的间隔符separator串在一起,组成一个新的字符串并返回。 fn:length(item) 返回参数item中包含元素的数量。参数Item类型是数组、collection或者String。如果是String类型,返回值是String中的字符数。 fn:replace(string, before, after) 返回一个String对象。用参数after字符串替换参数string中所有出现参数before字符串的地方,并返回替换后的结果 fn:split(string, separator) 返回一个数组,以参数separator 为分割符分割参数string,分割后的每一部分就是数组的一个元素 fn:startsWith(string, prefix) 如果参数string以参数prefix开头,返回true fn:substring(string, begin, end) 返回参数string部分字符串, 从参数begin开始到参数end位置,包括end位置的字符 fn:substringAfter(string, substring) 返回参数substring在参数string中后面的那一部分字符串 fn:substringBefore(string, substring) 返回参数substring在参数string中前面的那一部分字符串 fn:toLowerCase(string) 将参数string所有的字符变为小写,并将其返回 fn:toUpperCase(string) 将参数string所有的字符变为大写,并将其返回 fn:trim(string) 去除参数string 首尾的空格,并将其返回 二、JSP EL简介 1、语法结构 ${expression} 2、[ ]与.运算符 EL 提供“.“和“[ ]“两种运算符来存取数据。 当要存取的属性名称中包含一些特殊字符,如.或?等并非字母或数字的符号,就一定要使用“[ ]“。例如: ${user.My-Name}应当改为${user["My-Name"] } 如果要动态取值时,就可以用“[ ]“来做,而“.“无法做到动态取值。例如: ${sessionScope.user[data]}中data 是一个变量 3、变量 EL存取变量数据的方法很简单,例如:${username}。它的意思是取出某一范围中名称为username的变量。 因为我们并没有指定哪一个范围的username,所以它会依序从Page、Request、Session、Application范围查找。 假如途中找到username,就直接回传,不再继续找下去,但是假如全部的范围都没有找到时,就回传null。 属性范围在EL中的名称 Page PageScope Request RequestScope Session SessionScope Application ApplicationScope 二、JSP EL 中的有效表达式 有效表达式可以包含文字、操作符、变量(对象引用)和函数调用。我们将分别了解这些有效表达式中的每一种: 1、文字 JSP 表达式语言定义可在表达式中使用的以下文字: 文字 文字的值 Boolean true 和 false Integer 与 Java 类似。可以包含任何正数或负数,例如 24、-45、567 Floating Point 与 Java 类似。可以包含任何正的或负的浮点数,例如 -1.8E-45、4.567 String 任何由单引号或双引号限定的字符串。对于单引号、双引号和反斜杠,使用反斜杠字符作为转义序列。必须注意,如果在字符串两端使用双引号,则单引号不需要转义。 Null null 2、操作符 JSP 表达式语言提供以下操作符,其中大部分是 Java 中常用的操作符: 术语 定义 算术型 +、-(二元)、*、/、div、%、mod、-(一元) 逻辑型 and、&&、or、||、!、not 关系型 ==、eq、!=、ne、、gt、<=、le、>=、ge。可以与其他值进行比较,或与布尔型、字符串型、整型或浮点型文字进行比较。 空 空操作符是前缀操作,可用于确定值是否为空。 条件型 A ?B :C。根据 A 赋值的结果来赋值 B 或 C。 3、隐式对象 JSP 表达式语言定义了一组隐式对象,其中许多对象在 JSP scriplet 和表达式中可用: 术语 定义 pageContext JSP 页的上下文。它可以用于访问 JSP 隐式对象,如请求、响应、会话、输出、servletContext 等。例如,${pageContext.response} 为页面的响应对象赋值。 此外,还提供几个隐式对象,允许对以下对象进行简易访问: 术语 定义 param 将请求参数名称映射到单个字符串参数值(通过调用 ServletRequest.getParameter (String name) 获得)。getParameter (String) 方法返回带有特定名称的参数。表达式 $(param.name) 相当于 request.getParameter (name)。 paramValues 将请求参数名称映射到一个数值数组(通过调用 ServletRequest.getParameter (String name) 获得)。它与 param 隐式对象非常类似,但它检索一个字符串数组而不是单个值。表达式 ${paramvalues.name) 相当于 request.getParamterValues(name)。 header 将请求头名称映射到单个字符串头值(通过调用 ServletRequest.getHeader(String name) 获得)。表达式 ${header.name} 相当于 request.getHeader(name)。 headerValues 将请求头名称映射到一个数值数组(通过调用 ServletRequest.getHeaders(String) 获得)。它与头隐式对象非常类似。表达式 ${headerValues.name} 相当于 request.getHeaderValues(name)。 cookie 将 cookie 名称映射到单个 cookie 对象。向服务器发出的客户端请求可以获得一个或多个 cookie。表达式 ${cookie.name.value} 返回带有特定名称的第一个 cookie 值。如果请求包含多个同名的 cookie,则应该使用 ${headerValues.name} 表达式。 initParam 将上下文初始化参数名称映射到单个值(通过调用 ServletContext.getInitparameter(String name) 获得)。 除了上述两种类型的隐式对象之外,还有些对象允许访问多种范围的变量,如 Web 上下文、会话、请求、页面: 术语 定义 pageScope 将页面范围的变量名称映射到其值。例如,EL 表达式可以使用 ${pageScope.objectName} 访问一个 JSP 中页面范围的对象,还可以使用 ${pageScope.objectName.attributeName} 访问对象的属性。 requestScope 将请求范围的变量名称映射到其值。该对象允许访问请求对象的属性。例如,EL 表达式可以使用 ${requestScope.objectName} 访问一个 JSP 请求范围的对象,还可以使用 ${requestScope.objectName.attributeName} 访问对象的属性。 sessionScope 将会话范围的变量名称映射到其值。该对象允许访问会话对象的属性。例如: $sessionScope.name} applicationScope 将应用程序范围的变量名称映射到其值。该隐式对象允许访问应用程序范围的对象。 三、特别强调: 1、注意当表达式根据名称引用这些对象之一时,返回的是相应的对象而不是相应的属性。例如:即使现有的 pageContext 属性包含某些其他值,${pageContext} 也返回 PageContext 对象。 2、 注意 <%@ page isELIgnored="true" %> 表示是否禁用EL语言,TRUE表示禁止.FALSE表示不禁止.JSP2.0中默认的启用EL语言 |
|||
Spring 动态配置数据源 | spring | ||
hibernate.properties:放置在src根目录下 hibernate.properties: jdbc.driverClassName=com.mysql.jdbc.Driver jdbc.url=jdbc:mysql://127.0.0.1:3306/laohutu jdbc.username=root jdbc.password=root applicationContext.xml: <?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.5.xsd"> <bean id="propertyConfigurer" class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer"> <property name="location"> <value>classpath:hibernate.properties</value> </property> </bean> <bean id="dataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource"> <property name="driverClassName" value="${jdbc.driverClassName}"></property> <property name="url" value="${jdbc.url}"></property> <property name="username" value="${jdbc.username}"></property> <property name="password" value="${jdbc.password}"></property> </bean> <bean id="sessionFactory" class="org.springframework.orm.hibernate3.LocalSessionFactoryBean"> <property name="dataSource" ref="dataSource"></property> <property name="hibernateProperties"> <props> <prop key="hibernate.dialect"> org.hibernate.dialect.MySQLDialect </prop> <prop key="hibernate.hbm2ddl.auto"> update </prop> <prop key="hibernate.show_sql"> true </prop> <prop key="hibernate.format_sql"> true </prop> </props> </property> |
|||
struts2+json=ajax | web | ||
/** * 通过部门编号获取部门信息 * @param deptid */ public List<Emp> findEmpByByDeptID(int deptid) { Session session=Template.getSession(); String hql = "select emp from Emp emp left join fetch emp.dept where emp.dept.deptid='"+ deptid + "'"; Query query = session.createQuery(hql); List<Emp> emps = query.list(); session.close(); return emps; } public String findEmpBydeptID() { emps=this.getEmpservice().findEmpByByDeptID(dept.getDeptid()); JSONArray jsonarray=new JSONArray(); jsonarray.put(emps).toString(); return "success"; } <package name="emp" extends="json-default"> <action name="findemp" class="com.chinasoft.action.EmpAction" method="findEmpBydeptID"> <result type="json"> <param name="excludeProperties">empservice</param> </result> </action> </package> $(function(){ $("#dept").change(function(){ var $dval=$(this).val(); $.getJSON("<%=path%>/emp/findemp.action?dept.deptid="+$dval,function(data){ var strHTML='<select name="" id="ddd"><option value="">--请选择--</option>'; $.each(data.emps,function(i,v){ strHTML+='<option value="'+v.empid+'">"'+v.empname+'"</option>'; }) strHTML+='</select>'; $("#emp").html(strHTML); }) }) }) |
|||
servlet+json=ajax 2 | web | ||
public List<Dept> getDept2() { List<Dept> deptList = new ArrayList<Dept>(); Connection conn = Template.getConnection(); PreparedStatement prestmt = null; ResultSet rs = null; String sql = "select * from dept"; conn = super.getConnection(); try { prestmt = conn.prepareStatement(sql); rs = prestmt.executeQuery(); while (rs.next()) { Dept dept = new Dept(); dept.setDeptid(rs.getInt(1)); dept.setDeptname(rs.getString(2)); dept.setDeptdesc(rs.getString(3)); deptList.add(dept); } } catch (SQLException e) { e.printStackTrace(); } return deptList; } public void show2(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { response.setContentType("text/json"); List<Dept> deptList = this.getDepttest().getDept2(); JSONArray jsonArray = new JSONArray(); for(int i=0;i<deptList.size();i++){ JSONObject object = new JSONObject(); try { object.put("deptid", deptList.get(i).getDeptid()); object.put("deptname", deptList.get(i).getDeptname()); object.put("deptdesc", deptList.get(i).getDeptdesc()); jsonArray.put(object); } catch (JSONException e) { e.printStackTrace(); } } response.getWriter().print(jsonArray.toString()); } <script type="text/javascript"> $(function(){ var html = "<table><tr><td>编号</td><td>部门名称</td><td>部门描述</td> <td>操作</td><tr>"; $.getJSON("<%=path%>/servlet/DeptShowServlet.do?method=show",function(data){ $.each(data,function(i,v){ html += "<tr><td>"+v.deptid+"</td><td>" +v.deptname+"</td><td>" +v.deptdesc+"</td><td><a href=\"http://www.baidu.com\">删除</a></td></tr>"; }); html+="</table>"; $("#main").html(html); }) }) </script> |
|||
servlert+json=ajax 1 | web | ||
/** * 查询数据 * * @return */ public String getDept() { Connection conn = Template.getConnection(); PreparedStatement prestmt = null; ResultSet rs = null; JSONArray array = new JSONArray(); String sql = "select * from dept"; conn = super.getConnection(); try { prestmt = conn.prepareStatement(sql); rs = prestmt.executeQuery(); while (rs.next()) { JSONObject object = new JSONObject(); object.put("deptid", rs.getString(1)); object.put("deptname", rs.getString(2)); object.put("deptdesc", rs.getString(3)); array.put(object); } } catch (SQLException e) { e.printStackTrace(); } catch (JSONException e) { e.printStackTrace(); } return array.toString(); } public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { // response.setContentType("text/json"); String method = request.getParameter("method"); if (method.equals("show")) { this.show(request, response); } } public void show(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { PrintWriter out = response.getWriter(); out.print(this.getDepttest().getDept()); } <script type="text/javascript"> $(function(){ var html = "<table><tr><td>编号</td><td>部门名称</td><td>部门描述</td><td>操作</td><tr>"; $.getJSON("<%=path%>/servlet/DeptShowServlet.do?method=show",function(data){ $.each(data,function(i,v){ html += "<tr><td>"+v.deptid+"</td><td>" +v.deptname+"</td><td>" +v.deptdesc+"</td><td><a href=\"http://www.baidu.com\">删除</a></td></tr>"; }); html+="</table>"; $("#main").html(html); }) }) </script> |
|||
css3圆角 | css | ||
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>Insert title here</title> <style type="text/css"> table{ text-align: center; border-radius:10px; } td{ background-color: lime; border-radius:10px; } td:FIRST-CHILD{ background-color: #ECF1EF; } tr:FIRST-CHILD { background-color: yellow; } .box{ border-radius:10px; border:#000; height:300px; width:300px; background:#ccc; box-shadow:5px 5px 10px #000; } .box1{ border-radius:10px; border:#000; height:300px; width:300px; background:white; box-shadow:5px 5px 10px #000; } </style> </head> <body> <div class="box"></div> <table align="center" class="box1"> <tr> <td>编号</td> <td>名称</td> <td>描述</td> </tr> <tr> <td>001</td> <td>张三</td> <td>张三</td> </tr> <tr> <td>002</td> <td>李四</td> <td>李四</td> </tr> </table> </body> </html> |
|||
网页收藏夹 | 收藏夹 | ||
<!DOCTYPE NETSCAPE-Bookmark-file-1> <!-- This is an automatically generated file. It will be read and overwritten. Do Not Edit! --> <META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=gb2312"> <TITLE>Bookmarks</TITLE> <H1>Bookmarks</H1> <DL><p> <DT><H3 FOLDED ADD_DATE="1343734910">Css</H3> <DL><p> <DT><A HREF="http://www.w3school.com.cn/css/css_padding.asp" ADD_DATE="1343734910" LAST_VISIT="0" LAST_MODIFIED="0">CSS 内边距</A> <DT><A HREF="http://9708989.iteye.com/blog/477935" ADD_DATE="1343734910" LAST_VISIT="1346226108" LAST_MODIFIED="1346226108">Css颜色对照表 - Blue Sky - ITeye技术网站</A> <DT><A HREF="http://crocodile.iteye.com/blog/1096193" ADD_DATE="1343734910" LAST_VISIT="0" LAST_MODIFIED="0">padding - - ITeye技术网站</A> <DT><A HREF="http://www.iteye.com/topic/874641" ADD_DATE="1346138706" LAST_VISIT="0" LAST_MODIFIED="0">免费ERP第三锤:界面好看,更要好用 - Java综合 - Java - ITeye论坛</A> <DT><A HREF="http://www.blueidea.com/articleimg/2007/03/4545/css2.html" ADD_DATE="1346151760" LAST_VISIT="1346221874" LAST_MODIFIED="1346221874">彻底弄懂CSS盒子模式(DIV布局快速入门)——作者:唐国辉 [本页为无表格排版标准网页]</A> <DT><A HREF="http://happmaoo.iteye.com/blog/912290" ADD_DATE="1346896269" LAST_VISIT="0" LAST_MODIFIED="0">CSS速成手册(2) - 学习软件技术,争做电脑狂人 - ITeye技术网站</A> </DL><p> <DT><H3 FOLDED ADD_DATE="1343734910">HuaWei</H3> <DL><p> <DT><A HREF="https://imailcn.huawei.com/owa/auth/logon.aspx?replaceCurrent=1&url=https%3a%2f%2fimailcn.huawei.com%2fowa%2f" ADD_DATE="1343734910" LAST_VISIT="0" LAST_MODIFIED="0">Outlook Web App</A> <DT><A HREF="http://10.88.32.105:8520/login.jsp?os_destination=%2Fsecure%2FIssueNavigator.jspa%3Fmode%3Dhide%26requestId%3D10237" ADD_DATE="1343734910" LAST_VISIT="1346134748" LAST_MODIFIED="1346134748">无线解决方案部 - 登录</A> <DT><A HREF="http://xinsheng.huawei.com/cn/forum/index.php?app=home&mod=Public&act=login" ADD_DATE="1343734910" LAST_VISIT="1345698974" LAST_MODIFIED="1345698974">登录</A> <DT><A HREF="http://10.71.99.98/search/" ADD_DATE="1343734910" LAST_VISIT="1346923802" LAST_MODIFIED="1346923802">研发安全版外网搜索引擎</A> <DT><A HREF="http://10.145.8.20:8080/chartstat?flag=chart&type=month&groupid=" ADD_DATE="1343986392" LAST_VISIT="1346134763" LAST_MODIFIED="1346134763">部门使用情况统计</A> </DL><p> <DT><H3 FOLDED ADD_DATE="1343734910">Java工程路径</H3> <DL><p> <DT><A HREF="http://thtwin.iteye.com/blog/574254" ADD_DATE="1343734910" LAST_VISIT="0" LAST_MODIFIED="0">JAVA类,JSP,Servlet获取工程路径 - 行知 - ITeye技术网站</A> <DT><A HREF="http://hello-kitty-o.iteye.com/blog/688400" ADD_DATE="1343734910" LAST_VISIT="0" LAST_MODIFIED="0">java获取工程目录路径 - - ITeye技术网站</A> <DT><A HREF="http://seahb.iteye.com/blog/1090112" ADD_DATE="1343734910" LAST_VISIT="0" LAST_MODIFIED="0">获取工程根路径方法 - - ITeye技术网站</A> </DL><p> <DT><H3 FOLDED ADD_DATE="1343734910">Jquery</H3> <DL><p> <DT><A HREF="http://jquery.com/" ADD_DATE="1343734910" LAST_VISIT="0" LAST_MODIFIED="0">jquery The Write Less, Do More, JavaScript Library</A> <DT><A HREF="http://kb.cnblogs.com/zt/jquery/" ADD_DATE="1343734910" LAST_VISIT="0" LAST_MODIFIED="0">博客园jQuery专题</A> <DT><A HREF="http://www.iteye.com/topic/1120761" ADD_DATE="1345100777" LAST_VISIT="0" LAST_MODIFIED="0">jQuery1.7.1 API手册 - JavaScript,jQuery - web - ITeye论坛</A> </DL><p> <DT><H3 FOLDED ADD_DATE="1343734910">POI</H3> <DL><p> <DT><A HREF="http://www.iteye.com/topic/388005" ADD_DATE="1343734910" LAST_VISIT="0" LAST_MODIFIED="0">Apache POI HSSF读写Excel总结 - Java - ITeye论坛</A> <DT><A HREF="http://poi.apache.org/spreadsheet/quick-guide.html" ADD_DATE="1343734910" LAST_VISIT="0" LAST_MODIFIED="0">Busy Developers' Guide to HSSF and XSSF Features</A> <DT><A HREF="http://xiaomaha.iteye.com/blog/1225041" ADD_DATE="1343734910" LAST_VISIT="0" LAST_MODIFIED="0">java poi 创建excel 兼容20032007 模拟数据库导出 解决自动调整宽度、日期格式 - - ITeye技术网站</A> <DT><A HREF="http://renjie120.iteye.com/blog/1100272" ADD_DATE="1343734910" LAST_VISIT="0" LAST_MODIFIED="0">java应用集锦8使用poi进行excel操作,同时支持excel2003和2007 - 飞翔的蚂蚁 - ITeye技术网站</A> <DT><A HREF="http://liyiye.iteye.com/blog/239874" ADD_DATE="1343734910" LAST_VISIT="0" LAST_MODIFIED="0">java操作Excel(Jakarta_POI) - liyiye - ITeye技术网站</A> <DT><A HREF="http://www.iteye.com/topic/1120805" ADD_DATE="1343734910" LAST_VISIT="0" LAST_MODIFIED="0">POI 3.8 Beta5 创建大数据量 Excel文件 - Java综合 - Java - ITeye论坛</A> <DT><A HREF="http://zhujiang520.iteye.com/blog/1005753" ADD_DATE="1343734910" LAST_VISIT="0" LAST_MODIFIED="0">POI中设置Excel单元格格式 - 飘在江湖的刀 - ITeye技术网站</A> <DT><A HREF="http://liufei-fir.iteye.com/blog/737335" ADD_DATE="1343734910" LAST_VISIT="0" LAST_MODIFIED="0">poi学习笔记 - 刘飞 - ITeye技术网站</A> <DT><A HREF="http://z3sm2012.iteye.com/blog/1405228" ADD_DATE="1343734910" LAST_VISIT="0" LAST_MODIFIED="0">POI导出excel 实例 - 小杨学Java之z3sm - ITeye技术网站</A> <DT><A HREF="http://www.iteye.com/search?type=all&query=sheet.getNumMergedRegions%28%29" ADD_DATE="1343734910" LAST_VISIT="0" LAST_MODIFIED="0">全站搜索 - ITeye - Java编程 Hibernate Spring AJAX Agile 敏捷软件开发 ruby on rails - 做最棒的软件开发交流社区</A> <DT><A HREF="http://www.iteye.com/search?type=all&query=poi%E5%AF%BC%E5%87%BA2007&sort=" ADD_DATE="1343734910" LAST_VISIT="0" LAST_MODIFIED="0">全站搜索 - ITeye - Java编程 Hibernate Spring AJAX Agile 敏捷软件开发 ruby on rails - 做最棒的软件开发交流社区1</A> <DT><A HREF="http://www.iteye.com/topic/657977" ADD_DATE="1343734910" LAST_VISIT="0" LAST_MODIFIED="0">发一个本人写的通用Excel导入导出组件类,请高手指正! - New - ITeye论坛</A> <DT><A HREF="http://gaosheng08.iteye.com/blog/624758" ADD_DATE="1343734910" LAST_VISIT="0" LAST_MODIFIED="0">大数据量的excel文件读取——excel2007 - - ITeye技术网站</A> <DT><A HREF="http://www.iteye.com/topic/624969" ADD_DATE="1343734910" LAST_VISIT="0" LAST_MODIFIED="0">大数据量的excel文件读取——excel2007(含代码及示例) - Java综合 - Java - ITeye论坛</A> <DT><A HREF="http://suanfa.group.iteye.com/group/topic/14060" ADD_DATE="1343734910" LAST_VISIT="0" LAST_MODIFIED="0">导出数据表中数据为Excel文件(Java版) - 算法~ - ITeye群组</A> <DT><A HREF="http://www.iteye.com/topic/647378" ADD_DATE="1343734910" LAST_VISIT="0" LAST_MODIFIED="0">封装对excel的操作,包括本地读写excel和流中输出excel - New - ITeye论坛</A> <DT><A HREF="http://787141854-qq-com.iteye.com/blog/1481551" ADD_DATE="1343734910" LAST_VISIT="0" LAST_MODIFIED="0">闲来无事写了一个利用JXL导出Excel的工具类(比较简单期待高手提供更加灵活的工具类) - 编程风魔 - ITeye技术网站</A> </DL><p> <DT><H3 FOLDED ADD_DATE="1343734910">xml</H3> <DL><p> <DT><A HREF="http://blog.csdn.net/yj_woku/article/details/6564540" ADD_DATE="1343734910" LAST_VISIT="0" LAST_MODIFIED="0">Xpath使用,从 Java 程序中查询 XML - yj_woku的专栏 - 博客频道 - CSDN.NET</A> </DL><p> <DT><A HREF="http://translate.google.com/#" ADD_DATE="1343734910" LAST_VISIT="1348276928" LAST_MODIFIED="1348276928">Google 翻译#</A> <DT><A HREF="file:///D:/用户工具/System%20Tool.html" ADD_DATE="1343734910" LAST_VISIT="1346383443" LAST_MODIFIED="1346383443">System Tool Quick Start</A> <DT><H3 FOLDED ADD_DATE="1343786108">Java.util.Properties</H3> <DL><p> <DT><A HREF="http://mxdxm.iteye.com/blog/645162" ADD_DATE="1343786111" LAST_VISIT="1344330657" LAST_MODIFIED="1344330657">java中的 Properties - javaeye - ITeye技术网站</A> </DL><p> <DT><H3 FOLDED ADD_DATE="1343808017">Web项目发布</H3> <DL><p> <DT><A HREF="http://miman2008.iteye.com/blog/848417" ADD_DATE="1343808019" LAST_VISIT="1343809735" LAST_MODIFIED="1343809735">tomcat中发布web项目 - 类似风华 - ITeye技术网站</A> <DT><A HREF="http://z-jianwen.iteye.com/blog/723417" ADD_DATE="1343808668" LAST_VISIT="1343809755" LAST_MODIFIED="1343809755">web项目的发布 - 青龙 - ITeye技术网站</A> <DT><A HREF="http://xieyongqiu-163-com.iteye.com/blog/686328" ADD_DATE="1343809580" LAST_VISIT="0" LAST_MODIFIED="0">tomcat 发布多个web项目 - - ITeye技术网站</A> <DT><A HREF="http://ganting.iteye.com/blog/472479" ADD_DATE="1343869054" LAST_VISIT="0" LAST_MODIFIED="0">在tomcat中部署web项目 - - ITeye技术网站</A> </DL><p> <DT><H3 FOLDED ADD_DATE="1343814087">定时任务</H3> <DL><p> <DT><A HREF="http://www.iteye.com/topic/338557" ADD_DATE="1343814088" LAST_VISIT="1343898412" LAST_MODIFIED="1343898412">java定时器的使用(Scheduler ) - Spring - Java - ITeye论坛</A> <DT><A HREF="http://www.iteye.com/topic/1116570" ADD_DATE="1343814156" LAST_VISIT="1343899140" LAST_MODIFIED="1343899140">对chainsaw中一个简单Job Scheduler的扩展 - Java综合 - Java - ITeye论坛</A> </DL><p> <DT><H3 FOLDED ADD_DATE="1343984614">javascript</H3> <DL><p> <DT><A HREF="http://576017120.iteye.com/blog/1336122" ADD_DATE="1343984627" LAST_VISIT="0" LAST_MODIFIED="0">js javascript 去空格 - - ITeye技术网站</A> <DT><A HREF="http://www.iteye.com/search?type=all&query=js%E5%8E%BB%E6%8E%89%E5%AD%97%E7%AC%A6%E4%B8%B2%E8%B5%B7%E5%A7%8B%E5%92%8C%E7%BB%93%E5%B0%BE%E7%9A%84%E7%A9%BA%E6%A0%BC" ADD_DATE="1343984635" LAST_VISIT="0" LAST_MODIFIED="0">全站搜索 - ITeye - Java编程 Hibernate Spring AJAX Agile 敏捷软件开发 ruby on rails - 做最棒的软件开发交流社区</A> </DL><p> <DT><H3 FOLDED ADD_DATE="1344218384">MySQL</H3> <DL><p> <DT><A HREF="http://liuzejian4.iteye.com/blog/1617471" ADD_DATE="1344218385" LAST_VISIT="0" LAST_MODIFIED="0">SQL不重复记录 - - ITeye技术网站</A> </DL><p> <DT><H3 FOLDED ADD_DATE="1344301142">曲线图</H3> <DL><p> <DT><A HREF="http://jimingliu.iteye.com/blog/1013343" ADD_DATE="1344301142" LAST_VISIT="1344313117" LAST_MODIFIED="1344313117">简单曲线图 - - ITeye技术网站</A> <DT><A HREF="http://wuxiangqian.iteye.com/blog/1288106" ADD_DATE="1344398371" LAST_VISIT="1344588425" LAST_MODIFIED="1344588425">jfreechart 折线图 - 吴湘黔 - ITeye技术网站</A> <DT><A HREF="http://xiaofengtoo.iteye.com/blog/1226838" ADD_DATE="1343189506" LAST_VISIT="1344404242" LAST_MODIFIED="1344404242">JFreeChart 之三:折线图实现 - 一天进步一点 - ITeye技术网站</A> <DT><A HREF="http://www.iteye.com/topic/316860" ADD_DATE="1344399863" LAST_VISIT="0" LAST_MODIFIED="0">jfreechart完整使用(3)- CreateChartService.java - Java - ITeye论坛</A> <DT><A HREF="http://www.iteye.com/topic/725190" ADD_DATE="1344408229" LAST_VISIT="0" LAST_MODIFIED="0">JfreeChart热map应用并且实现自定义样式 - Java综合 - Java - ITeye论坛</A> <DT><A HREF="http://juliana-only.iteye.com/blog/393266" ADD_DATE="1344409771" LAST_VISIT="0" LAST_MODIFIED="0">JfreeChart折线图 - 远去的渡口 - ITeye技术网站</A> <DT><H3 FOLDED ADD_DATE="1344425160">IBM源码</H3> <DL><p> <DT><A HREF="http://www.ibm.com/developerworks/cn/java/l-jfreechart/" ADD_DATE="1344425168" LAST_VISIT="0" LAST_MODIFIED="0">使用 JFreeChart 来创建基于 web 的图表</A> </DL><p> <DT><A HREF="http://suoyihen.iteye.com/blog/1372860" ADD_DATE="1344427701" LAST_VISIT="1344906355" LAST_MODIFIED="1344906355">JFreeChart_web - suoyihen - ITeye技术网站</A> </DL><p> <DT><H3 FOLDED ADD_DATE="1344477272">SVN</H3> <DL><p> <DT><A HREF="http://szxsvn04-rd:6801/svn/WN_CSPT_SVN/AutoStar/AutoStarSupportVersion/trunk/Cspt_Code/AutoStarV500R006/environment/01.code/Designer/lib/" ADD_DATE="1344477277" LAST_VISIT="1347007925" LAST_MODIFIED="1347007925">WN_CSPT_SVN - Revision 26461: /AutoStar/AutoStarSupportVersion/trunk/Cspt_Code/AutoStarV500R006/environment/01.code/Designer/lib</A> <DT><A HREF="http://ruby8.iteye.com/blog/1163141" ADD_DATE="1346912071" LAST_VISIT="1347007890" LAST_MODIFIED="1347007890">svn 命令 - Ruby爱好者 - ITeye技术网站</A> <DT><A HREF="http://z466459262.iteye.com/blog/1127301" ADD_DATE="1346918685" LAST_VISIT="1347007908" LAST_MODIFIED="1347007908">svn命令 - java - ITeye技术网站</A> <DT><A HREF="http://beisicao.iteye.com/blog/1112843" ADD_DATE="1347007233" LAST_VISIT="1347007948" LAST_MODIFIED="1347007948">java集成svnkit - - ITeye技术网站</A> </DL><p> <DT><H3 FOLDED ADD_DATE="1344513916">经典心生</H3> <DL><p> <DT><A HREF="http://xinsheng.huawei.com/cn/index.php?app=forum&mod=Detail&act=index&id=474387" ADD_DATE="1344513942" LAST_VISIT="0" LAST_MODIFIED="0">史上最*最雷人的100个百度知道答案 ,试试看,你能超越吗?</A> </DL><p> <DT><H3 FOLDED ADD_DATE="1344588246">经典代码</H3> <DL><p> <DT><H3 FOLDED ADD_DATE="1344588260">javascript</H3> <DL><p> <DT><A HREF="http://ggyy899.iteye.com/blog/255251" ADD_DATE="1344588263" LAST_VISIT="0" LAST_MODIFIED="0">javascript经典代码 - 专注java,ext,css,javascript - ITeye技术网站</A> </DL><p> </DL><p> <DT><H3 FOLDED ADD_DATE="1344844004">内部类</H3> <DL><p> <DT><A HREF="http://len-len.iteye.com/blog/1445692" ADD_DATE="1344844005" LAST_VISIT="0" LAST_MODIFIED="0">内部类之局部内部类 - 蔚蓝的天空 - ITeye技术网站</A> </DL><p> <DT><H3 FOLDED ADD_DATE="1344946438">乱码处理</H3> <DL><p> <DT><A HREF="http://wsqwsq000.iteye.com/blog/1120622" ADD_DATE="1344946438" LAST_VISIT="0" LAST_MODIFIED="0">URL传参及action传参出现乱码 - - ITeye技术网站</A> </DL><p> <DT><H3 FOLDED ADD_DATE="1345195640">mysql</H3> <DL><p> <DT><A HREF="http://jc-dreaming.iteye.com/blog/549136" ADD_DATE="1345195642" LAST_VISIT="0" LAST_MODIFIED="0">sql 提取不重复记录 - - ITeye技术网站</A> </DL><p> <DT><H3 FOLDED ADD_DATE="1345436350">站酷</H3> <DL><p> <DT><A HREF="http://www.zcool.com.cn/" ADD_DATE="1345436351" LAST_VISIT="1348204929" LAST_MODIFIED="1348204929">站酷(ZCOOL) - 设计师互动平台 - 交流设计.分享快乐</A> </DL><p> <DT><H3 FOLDED ADD_DATE="1345522382">泛型</H3> <DL><p> <DT><A HREF="http://www.infoq.com/cn/articles/cf-java-generics" ADD_DATE="1345522384" LAST_VISIT="0" LAST_MODIFIED="0">Java深度历险(五)——Java泛型</A> <DT><A HREF="http://10.71.99.98/search/cache.php?q=java%B7%BA%D0%CD&url=bXl0ZXN0fGh0dHA6Ly93d3cuZmg4ODguY29tL3Nob3dmaWxlLmh0bWw%2FYXJ0aWNsZWlkPTUxMjAzNTQyRkM4OTQzQUU5RDNCOTFDN0ZBNEY1NTA3JnByb2plY3RpZD01JnVzZXJuYW1lPXlobnxteXRlc3Q%3D" ADD_DATE="1345540923" LAST_VISIT="0" LAST_MODIFIED="0">Java泛型编程快速入门 - 网页天堂</A> <DT><A HREF="http://10.71.99.98/search/cache.php?q=java%B7%BA%D0%CD&url=bXl0ZXN0fGh0dHA6Ly9ibG9nLmNzZG4ubmV0L2V4cGxvcmVycy9hcmNoaXZlLzIwMDUvMDgvMTUvNDU0ODM3LmFzcHh8bXl0ZXN0" ADD_DATE="1345547260" LAST_VISIT="1345597394" LAST_MODIFIED="1345597394">Java1.5泛型指南中文版(Java1.5 Generic Tutorial) - explorers的专栏 - 博客频道 - CSDN.NET</A> </DL><p> <DT><H3 FOLDED ADD_DATE="1345616117">Log4J使用详解</H3> <DL><p> <DT><A HREF="http://www.iteye.com/topic/378077" ADD_DATE="1345616118" LAST_VISIT="0" LAST_MODIFIED="0">log4j详解与实战 - 企业应用 - Java - ITeye论坛</A> </DL><p> <DT><H3 FOLDED ADD_DATE="1345689732">myeclipse性能优化</H3> <DL><p> <DT><A HREF="http://liuyun073.iteye.com/blog/1409410" ADD_DATE="1345689733" LAST_VISIT="0" LAST_MODIFIED="0">Myeclipse10下载,安装,破解,插件,优化 - - ITeye技术网站</A> </DL><p> <DT><H3 FOLDED ADD_DATE="1345690735">Web</H3> <DL><p> <DT><H3 FOLDED ADD_DATE="1345690749">Jsp内置对象</H3> <DL><p> <DT><A HREF="http://www.iteye.com/topic/846916" ADD_DATE="1345690751" LAST_VISIT="0" LAST_MODIFIED="0">Session、Cookie 完全理解(转载) - Java综合 - Java - ITeye论坛</A> </DL><p> </DL><p> <DT><H3 FOLDED ADD_DATE="1345879422">java调用批处理</H3> <DL><p> <DT><A HREF="http://leonmau.iteye.com/blog/1174000" ADD_DATE="1345879423" LAST_VISIT="0" LAST_MODIFIED="0">[转载]Java Process.exitValue & Process.waitFor() - 南七技校学徒 - ITeye技术网站</A> <DT><A HREF="http://hsong.iteye.com/blog/1537275" ADD_DATE="1345879435" LAST_VISIT="0" LAST_MODIFIED="0">解决process.waitFor()阻塞 - Welcome - ITeye技术网站</A> </DL><p> <DT><H3 FOLDED ADD_DATE="1346040594">华为在线考试系统</H3> <DL><p> <DT><A HREF="http://rnd-oj/exam/login.jsp" ADD_DATE="1346040596" LAST_VISIT="1346842028" LAST_MODIFIED="1346842028">软件在线RND-OJ</A> </DL><p> <DT><H3 FOLDED ADD_DATE="1346720237">Spring MVC</H3> <DL><p> <DT><A HREF="http://jinnianshilongnian.iteye.com/blog/1670856" ADD_DATE="1346720237" LAST_VISIT="1346923817" LAST_MODIFIED="1346923817">第五章 处理器拦截器详解——跟着开涛学SpringMVC - 私塾在线网 http://sishuok.com - ITeye技术网站</A> <DT><A HREF="file:///C:/Documents%20and%20Settings/rKF54892/%E6%A1%8C%E9%9D%A2/spring/spring/%E5%9F%BA%E4%BA%8E%E6%B3%A8%E8%A7%A3%E7%9A%84%20Spring%20MVC%20%E7%AE%80%E5%8D%95%E5%85%A5%E9%97%A8%20-%20%E8%AE%A8%E8%AE%BA%E5%8C%BA%20-%20%E5%BC%80%E6%BA%90%E4%B8%AD%E5%9B%BD%E7%A4%BE%E5%8C%BA.htm" ADD_DATE="1348187456" LAST_VISIT="0" LAST_MODIFIED="0">基于注解的 Spring MVC 简单入门 - 讨论区 - 开源中国社区</A> <DT><A HREF="file:///C:/Documents%20and%20Settings/rKF54892/%E6%A1%8C%E9%9D%A2/spring/spring/%E5%AE%9E%E4%BE%8B%E8%AF%A6%E8%A7%A3Spring%20MVC%E5%85%A5%E9%97%A8%E4%BD%BF%E7%94%A8%20-%20%E8%AE%A8%E8%AE%BA%E5%8C%BA%20-%20%E5%BC%80%E6%BA%90%E4%B8%AD%E5%9B%BD%E7%A4%BE%E5%8C%BA.htm" ADD_DATE="1348187470" LAST_VISIT="0" LAST_MODIFIED="0">实例详解Spring MVC入门使用 - 讨论区 - 开源中国社区</A> </DL><p> <DT><H3 FOLDED ADD_DATE="1346721077">From IE Folder</H3> <DL><p> <DT><H3 FOLDED ADD_DATE="1346721077">Css</H3> <DL><p> <DT><A HREF="http://www.w3school.com.cn/css/css_padding.asp" ADD_DATE="1346721077" LAST_VISIT="0" LAST_MODIFIED="0">CSS 内边距</A> <DT><A HREF="http://9708989.iteye.com/blog/477935" ADD_DATE="1346721077" LAST_VISIT="0" LAST_MODIFIED="0">Css颜色对照表 - Blue Sky - ITeye技术网站</A> <DT><A HREF="http://crocodile.iteye.com/blog/1096193" ADD_DATE="1346721077" LAST_VISIT="0" LAST_MODIFIED="0">padding - - ITeye技术网站</A> </DL><p> <DT><H3 FOLDED ADD_DATE="1346721077">EasyLab</H3> <DL><p> <DT><A HREF="http://10.145.54.158/first.htm" ADD_DATE="1346721077" LAST_VISIT="0" LAST_MODIFIED="0">西研实验室管理平台</A> <DT><A HREF="http://10.145.8.20:8080/chartstat?flag=chart&type=month&groupid=" ADD_DATE="1346721077" LAST_VISIT="0" LAST_MODIFIED="0">部门使用情况统计</A> </DL><p> <DT><A HREF="http://translate.google.com/#" ADD_DATE="1346721077" LAST_VISIT="0" LAST_MODIFIED="0">Google 翻译#</A> <DT><H3 FOLDED ADD_DATE="1346721077">HuaWei</H3> <DL><p> <DT><A HREF="https://imailcn.huawei.com/owa/auth/logon.aspx?replaceCurrent=1&url=https%3a%2f%2fimailcn.huawei.com%2fowa%2f" ADD_DATE="1346721077" LAST_VISIT="0" LAST_MODIFIED="0">Outlook Web App</A> <DT><A HREF="http://10.88.32.105:8520/login.jsp?os_destination=%2Fsecure%2FIssueNavigator.jspa%3Fmode%3Dhide%26requestId%3D10237" ADD_DATE="1346721077" LAST_VISIT="0" LAST_MODIFIED="0">无线解决方案部 - 登录</A> <DT><A HREF="http://xinsheng.huawei.com/cn/forum/index.php?app=home&mod=Public&act=login" ADD_DATE="1346721077" LAST_VISIT="0" LAST_MODIFIED="0">登录</A> </DL><p> <DT><H3 FOLDED ADD_DATE="1346721077">Java工程路径</H3> <DL><p> <DT><A HREF="http://thtwin.iteye.com/blog/574254" ADD_DATE="1346721077" LAST_VISIT="0" LAST_MODIFIED="0">JAVA类,JSP,Servlet获取工程路径 - 行知 - ITeye技术网站</A> <DT><A HREF="http://hello-kitty-o.iteye.com/blog/688400" ADD_DATE="1346721077" LAST_VISIT="0" LAST_MODIFIED="0">java获取工程目录路径 - - ITeye技术网站</A> <DT><A HREF="http://seahb.iteye.com/blog/1090112" ADD_DATE="1346721077" LAST_VISIT="0" LAST_MODIFIED="0">获取工程根路径方法 - - ITeye技术网站</A> </DL><p> <DT><H3 FOLDED ADD_DATE="1346721077">Jquery</H3> <DL><p> <DT><A HREF="http://jquery.com/" ADD_DATE="1346721077" LAST_VISIT="0" LAST_MODIFIED="0">jquery The Write Less, Do More, JavaScript Library</A> <DT><A HREF="http://kb.cnblogs.com/zt/jquery/" ADD_DATE="1346721077" LAST_VISIT="0" LAST_MODIFIED="0">博客园jQuery专题</A> </DL><p> <DT><H3 FOLDED ADD_DATE="1346721077">POI</H3> <DL><p> <DT><A HREF="http://www.iteye.com/topic/388005" ADD_DATE="1346721077" LAST_VISIT="0" LAST_MODIFIED="0">Apache POI HSSF读写Excel总结 - Java - ITeye论坛</A> <DT><A HREF="http://poi.apache.org/spreadsheet/quick-guide.html" ADD_DATE="1346721077" LAST_VISIT="0" LAST_MODIFIED="0">Busy Developers' Guide to HSSF and XSSF Features</A> <DT><A HREF="http://xiaomaha.iteye.com/blog/1225041" ADD_DATE="1346721077" LAST_VISIT="0" LAST_MODIFIED="0">java poi 创建excel 兼容20032007 模拟数据库导出 解决自动调整宽度、日期格式 - - ITeye技术网站</A> <DT><A HREF="http://renjie120.iteye.com/blog/1100272" ADD_DATE="1346721077" LAST_VISIT="0" LAST_MODIFIED="0">java应用集锦8使用poi进行excel操作,同时支持excel2003和2007 - 飞翔的蚂蚁 - ITeye技术网站</A> <DT><A HREF="http://liyiye.iteye.com/blog/239874" ADD_DATE="1346721077" LAST_VISIT="0" LAST_MODIFIED="0">java操作Excel(Jakarta_POI) - liyiye - ITeye技术网站</A> <DT><A HREF="http://www.iteye.com/topic/1120805" ADD_DATE="1346721077" LAST_VISIT="0" LAST_MODIFIED="0">POI 3.8 Beta5 创建大数据量 Excel文件 - Java综合 - Java - ITeye论坛</A> <DT><A HREF="http://zhujiang520.iteye.com/blog/1005753" ADD_DATE="1346721077" LAST_VISIT="0" LAST_MODIFIED="0">POI中设置Excel单元格格式 - 飘在江湖的刀 - ITeye技术网站</A> <DT><A HREF="http://liufei-fir.iteye.com/blog/737335" ADD_DATE="1346721077" LAST_VISIT="0" LAST_MODIFIED="0">poi学习笔记 - 刘飞 - ITeye技术网站</A> <DT><A HREF="http://z3sm2012.iteye.com/blog/1405228" ADD_DATE="1346721077" LAST_VISIT="0" LAST_MODIFIED="0">POI导出excel 实例 - 小杨学Java之z3sm - ITeye技术网站</A> <DT><A HREF="http://www.iteye.com/search?type=all&query=sheet.getNumMergedRegions%28%29" ADD_DATE="1346721077" LAST_VISIT="0" LAST_MODIFIED="0">全站搜索 - ITeye - Java编程 Hibernate Spring AJAX Agile 敏捷软件开发 ruby on rails - 做最棒的软件开发交流社区</A> <DT><A HREF="http://www.iteye.com/search?type=all&query=poi%E5%AF%BC%E5%87%BA2007&sort=" ADD_DATE="1346721077" LAST_VISIT="0" LAST_MODIFIED="0">全站搜索 - ITeye - Java编程 Hibernate Spring AJAX Agile 敏捷软件开发 ruby on rails - 做最棒的软件开发交流社区1</A> <DT><A HREF="http://www.iteye.com/topic/657977" ADD_DATE="1346721077" LAST_VISIT="0" LAST_MODIFIED="0">发一个本人写的通用Excel导入导出组件类,请高手指正! - New - ITeye论坛</A> <DT><A HREF="http://gaosheng08.iteye.com/blog/624758" ADD_DATE="1346721077" LAST_VISIT="0" LAST_MODIFIED="0">大数据量的excel文件读取——excel2007 - - ITeye技术网站</A> <DT><A HREF="http://www.iteye.com/topic/624969" ADD_DATE="1346721077" LAST_VISIT="0" LAST_MODIFIED="0">大数据量的excel文件读取——excel2007(含代码及示例) - Java综合 - Java - ITeye论坛</A> <DT><A HREF="http://suanfa.group.iteye.com/group/topic/14060" ADD_DATE="1346721077" LAST_VISIT="0" LAST_MODIFIED="0">导出数据表中数据为Excel文件(Java版) - 算法~ - ITeye群组</A> <DT><A HREF="http://www.iteye.com/topic/647378" ADD_DATE="1346721077" LAST_VISIT="0" LAST_MODIFIED="0">封装对excel的操作,包括本地读写excel和流中输出excel - New - ITeye论坛</A> <DT><A HREF="http://787141854-qq-com.iteye.com/blog/1481551" ADD_DATE="1346721077" LAST_VISIT="0" LAST_MODIFIED="0">闲来无事写了一个利用JXL导出Excel的工具类(比较简单期待高手提供更加灵活的工具类) - 编程风魔 - ITeye技术网站</A> </DL><p> <DT><A HREF="file:///D:/用户工具/System%20Tool.html" ADD_DATE="1346721077" LAST_VISIT="0" LAST_MODIFIED="0">System Tool Quick Start</A> <DT><H3 FOLDED ADD_DATE="1346721077">T3LINT</H3> <DL><p> <DT><A HREF="http://szxsvn04-rd:6801/svn/WN_CSPT_SVN/AutoStar/AutoStarSupportVersion/trunk/Cspt_Code/AutoStarV700R002/AutoStar_T3lint/T3Web/t3lint/" ADD_DATE="1346721077" LAST_VISIT="0" LAST_MODIFIED="0">T3lint Svn地址</A> <DT><A HREF="http://localhost:8080/T3Web/pages/index.jsp" ADD_DATE="1346721077" LAST_VISIT="0" LAST_MODIFIED="0">T3LINT</A> <DT><A HREF="http://10.145.11.221/T3Web/pages/index.jsp" ADD_DATE="1346721077" LAST_VISIT="0" LAST_MODIFIED="0">T3LINTser</A> </DL><p> <DT><H3 FOLDED ADD_DATE="1346721077">xml</H3> <DL><p> <DT><A HREF="http://blog.csdn.net/yj_woku/article/details/6564540" ADD_DATE="1346721077" LAST_VISIT="0" LAST_MODIFIED="0">Xpath使用,从 Java 程序中查询 XML - yj_woku的专栏 - 博客频道 - CSDN.NET</A> </DL><p> <DT><H3 FOLDED ADD_DATE="1346721077">枚举</H3> <DL><p> <DT><A HREF="http://chinakite.iteye.com/category/9778" ADD_DATE="1346721077" LAST_VISIT="0" LAST_MODIFIED="0">chinakite的博客 - 我是一个程序员分类文章列表 - ITeye技术网站</A> <DT><A HREF="http://www.iteye.com/topic/129693" ADD_DATE="1346721077" LAST_VISIT="0" LAST_MODIFIED="0">J2SE新特性——枚举 - 入门技术 - New - ITeye论坛</A> </DL><p> <DT><H3 FOLDED ADD_DATE="1346721077">课件</H3> <DL><p> <DT><H3 FOLDED ADD_DATE="1346721077">接口和抽象类</H3> <DL><p> <DT><A HREF="http://jackleechina.iteye.com/blog/1555467" ADD_DATE="1346721077" LAST_VISIT="0" LAST_MODIFIED="0">接口和抽象类什么时候使用才合适? - - ITeye技术网站</A> <DT><A HREF="http://10.71.99.98/search/search.php?q=%BD%D3%BF%DA%BA%CD%B3%E9%CF%F3%C0%E0%B5%C4%CA%B9%D3%C3" ADD_DATE="1346721077" LAST_VISIT="0" LAST_MODIFIED="0">接口和抽象类的使用_研发安全版外网搜索引擎</A> <DT><A HREF="http://10.71.99.98/search/cache.php?q=%BD%D3%BF%DA%BA%CD%B3%E9%CF%F3%C0%E0%B5%C4%CA%B9%D3%C3&url=bXl0ZXN0fGh0dHA6Ly9jYWNoZS5iYWlkdS5jb20vYz9tPTlkNzhkNTEzZDlkNDMxZDk0ZjliOTU2OTdkNjJjMDEwNmE0MzgxMTMyYmE3YTMwMjBlYTI4NDQ5ZTM3MzJiNDA1MDExZThhYzU2NTYwNzcwZDJkMjdkMTcxNmRlNGI0YjlkZjIyMTczNDcxNDUwYjA4Y2I5OGU1ZGRjY2I4NTU5NWM5ZjU3M2Y2NzZhODc1NjYzZDIwZGU4OGIxODJhOWI2NmQ2MThmZWFlNmFmYWE3YWE2OTg0YWVhNTgzOGMwZjA1OGQ0NDA1MGRkMWFkZDQ0NzVlNWY4ZDI0YmI1MTMyZmVmNmM3MTU0MDQyNGJmY2JhNmY3OGFiNWU3Yzc4OTkyNDRhYjc0N2ZmZWIzNTNhNTY4YmYxODk1OTRlYzI3OWQ0NjY0MDgwYWY0MmVhNzg0ZGViJnA9OGIyYTk2NDY5ZDljMTdlYjJhYmQ5YjdkMGMxYzljMjAmdXNlcj1iYWlkdSZmbT1zYyZxdWVyeT0lQkQlRDMlQkYlREElQkElQ0QlQjMlRTklQ0YlRjMlQzAlRTAlQjUlQzQlQ0ElQjklRDMlQzMmcWlkPWExZjllNmIxMDdkM2VmNjYmcDE9NyZmYXN0PXl8bXl0ZXN0" ADD_DATE="1346721077" LAST_VISIT="0" LAST_MODIFIED="0">接口抽象类他们有什么用为什么用他们_心若止水_百度空间</A> </DL><p> </DL><p> <DT><A HREF="http://www.iciba.net" ADD_DATE="1346721077" LAST_VISIT="0" LAST_MODIFIED="0">金山词霸网站</A> <DT><H3 FOLDED ADD_DATE="1346721077">链接</H3> <DL><p> </DL><p> </DL><p> <DT><H3 FOLDED ADD_DATE="1347007737">From IE Folder</H3> <DL><p> <DT><H3 FOLDED ADD_DATE="1347007737">Css</H3> <DL><p> <DT><A HREF="http://www.w3school.com.cn/css/css_padding.asp" ADD_DATE="1347007737" LAST_VISIT="0" LAST_MODIFIED="0">CSS 内边距</A> <DT><A HREF="http://9708989.iteye.com/blog/477935" ADD_DATE="1347007737" LAST_VISIT="0" LAST_MODIFIED="0">Css颜色对照表 - Blue Sky - ITeye技术网站</A> <DT><A HREF="http://crocodile.iteye.com/blog/1096193" ADD_DATE="1347007737" LAST_VISIT="0" LAST_MODIFIED="0">padding - - ITeye技术网站</A> </DL><p> <DT><H3 FOLDED ADD_DATE="1347007737">EasyLab</H3> <DL><p> <DT><A HREF="http://10.145.19.198:8080/first.htm" ADD_DATE="1347007737" LAST_VISIT="0" LAST_MODIFIED="0">服务器</A> <DT><A HREF="http://10.145.54.158/first.htm" ADD_DATE="1347007737" LAST_VISIT="0" LAST_MODIFIED="0">西研实验室管理平台</A> <DT><A HREF="http://10.145.8.20:8080/chartstat?flag=chart&type=month&groupid=" ADD_DATE="1347007737" LAST_VISIT="0" LAST_MODIFIED="0">部门使用情况统计</A> </DL><p> <DT><A HREF="http://translate.google.com/#" ADD_DATE="1347007737" LAST_VISIT="0" LAST_MODIFIED="0">Google 翻译#</A> <DT><H3 FOLDED ADD_DATE="1347007737">HuaWei</H3> <DL><p> <DT><A HREF="https://imailcn.huawei.com/owa/auth/logon.aspx?replaceCurrent=1&url=https%3a%2f%2fimailcn.huawei.com%2fowa%2f" ADD_DATE="1347007737" LAST_VISIT="0" LAST_MODIFIED="0">Outlook Web App</A> <DT><A HREF="http://10.88.32.105:8520/login.jsp?os_destination=%2Fsecure%2FIssueNavigator.jspa%3Fmode%3Dhide%26requestId%3D10237" ADD_DATE="1347007737" LAST_VISIT="0" LAST_MODIFIED="0">无线解决方案部 - 登录</A> <DT><A HREF="http://xinsheng.huawei.com/cn/forum/index.php?app=home&mod=Public&act=login" ADD_DATE="1347007737" LAST_VISIT="0" LAST_MODIFIED="0">登录</A> </DL><p> <DT><H3 FOLDED ADD_DATE="1347007737">Java工程路径</H3> <DL><p> <DT><A HREF="http://thtwin.iteye.com/blog/574254" ADD_DATE="1347007737" LAST_VISIT="0" LAST_MODIFIED="0">JAVA类,JSP,Servlet获取工程路径 - 行知 - ITeye技术网站</A> <DT><A HREF="http://hello-kitty-o.iteye.com/blog/688400" ADD_DATE="1347007737" LAST_VISIT="0" LAST_MODIFIED="0">java获取工程目录路径 - - ITeye技术网站</A> <DT><A HREF="http://seahb.iteye.com/blog/1090112" ADD_DATE="1347007737" LAST_VISIT="0" LAST_MODIFIED="0">获取工程根路径方法 - - ITeye技术网站</A> </DL><p> <DT><H3 FOLDED ADD_DATE="1347007737">Jquery</H3> <DL><p> <DT><A HREF="http://jquery.com/" ADD_DATE="1347007737" LAST_VISIT="0" LAST_MODIFIED="0">jquery The Write Less, Do More, JavaScript Library</A> <DT><A HREF="http://kb.cnblogs.com/zt/jquery/" ADD_DATE="1347007737" LAST_VISIT="0" LAST_MODIFIED="0">博客园jQuery专题</A> </DL><p> <DT><H3 FOLDED ADD_DATE="1347007737">POI</H3> <DL><p> <DT><A HREF="http://www.iteye.com/topic/388005" ADD_DATE="1347007737" LAST_VISIT="0" LAST_MODIFIED="0">Apache POI HSSF读写Excel总结 - Java - ITeye论坛</A> <DT><A HREF="http://poi.apache.org/spreadsheet/quick-guide.html" ADD_DATE="1347007737" LAST_VISIT="0" LAST_MODIFIED="0">Busy Developers' Guide to HSSF and XSSF Features</A> <DT><A HREF="http://xiaomaha.iteye.com/blog/1225041" ADD_DATE="1347007737" LAST_VISIT="0" LAST_MODIFIED="0">java poi 创建excel 兼容20032007 模拟数据库导出 解决自动调整宽度、日期格式 - - ITeye技术网站</A> <DT><A HREF="http://renjie120.iteye.com/blog/1100272" ADD_DATE="1347007737" LAST_VISIT="0" LAST_MODIFIED="0">java应用集锦8使用poi进行excel操作,同时支持excel2003和2007 - 飞翔的蚂蚁 - ITeye技术网站</A> <DT><A HREF="http://liyiye.iteye.com/blog/239874" ADD_DATE="1347007737" LAST_VISIT="0" LAST_MODIFIED="0">java操作Excel(Jakarta_POI) - liyiye - ITeye技术网站</A> <DT><A HREF="http://www.iteye.com/topic/1120805" ADD_DATE="1347007737" LAST_VISIT="0" LAST_MODIFIED="0">POI 3.8 Beta5 创建大数据量 Excel文件 - Java综合 - Java - ITeye论坛</A> <DT><A HREF="http://zhujiang520.iteye.com/blog/1005753" ADD_DATE="1347007737" LAST_VISIT="0" LAST_MODIFIED="0">POI中设置Excel单元格格式 - 飘在江湖的刀 - ITeye技术网站</A> <DT><A HREF="http://liufei-fir.iteye.com/blog/737335" ADD_DATE="1347007737" LAST_VISIT="0" LAST_MODIFIED="0">poi学习笔记 - 刘飞 - ITeye技术网站</A> <DT><A HREF="http://z3sm2012.iteye.com/blog/1405228" ADD_DATE="1347007737" LAST_VISIT="0" LAST_MODIFIED="0">POI导出excel 实例 - 小杨学Java之z3sm - ITeye技术网站</A> <DT><A HREF="http://www.iteye.com/search?type=all&query=sheet.getNumMergedRegions%28%29" ADD_DATE="1347007737" LAST_VISIT="0" LAST_MODIFIED="0">全站搜索 - ITeye - Java编程 Hibernate Spring AJAX Agile 敏捷软件开发 ruby on rails - 做最棒的软件开发交流社区</A> <DT><A HREF="http://www.iteye.com/search?type=all&query=poi%E5%AF%BC%E5%87%BA2007&sort=" ADD_DATE="1347007737" LAST_VISIT="0" LAST_MODIFIED="0">全站搜索 - ITeye - Java编程 Hibernate Spring AJAX Agile 敏捷软件开发 ruby on rails - 做最棒的软件开发交流社区1</A> <DT><A HREF="http://www.iteye.com/topic/657977" ADD_DATE="1347007737" LAST_VISIT="0" LAST_MODIFIED="0">发一个本人写的通用Excel导入导出组件类,请高手指正! - New - ITeye论坛</A> <DT><A HREF="http://gaosheng08.iteye.com/blog/624758" ADD_DATE="1347007737" LAST_VISIT="0" LAST_MODIFIED="0">大数据量的excel文件读取——excel2007 - - ITeye技术网站</A> <DT><A HREF="http://www.iteye.com/topic/624969" ADD_DATE="1347007737" LAST_VISIT="0" LAST_MODIFIED="0">大数据量的excel文件读取——excel2007(含代码及示例) - Java综合 - Java - ITeye论坛</A> <DT><A HREF="http://suanfa.group.iteye.com/group/topic/14060" ADD_DATE="1347007737" LAST_VISIT="0" LAST_MODIFIED="0">导出数据表中数据为Excel文件(Java版) - 算法~ - ITeye群组</A> <DT><A HREF="http://www.iteye.com/topic/647378" ADD_DATE="1347007737" LAST_VISIT="0" LAST_MODIFIED="0">封装对excel的操作,包括本地读写excel和流中输出excel - New - ITeye论坛</A> <DT><A HREF="http://787141854-qq-com.iteye.com/blog/1481551" ADD_DATE="1347007737" LAST_VISIT="0" LAST_MODIFIED="0">闲来无事写了一个利用JXL导出Excel的工具类(比较简单期待高手提供更加灵活的工具类) - 编程风魔 - ITeye技术网站</A> </DL><p> <DT><A HREF="file:///D:/用户工具/System%20Tool.html" ADD_DATE="1347007737" LAST_VISIT="0" LAST_MODIFIED="0">System Tool Quick Start</A> <DT><H3 FOLDED ADD_DATE="1347007737">T3LINT</H3> <DL><p> <DT><A HREF="http://szxsvn04-rd:6801/svn/WN_CSPT_SVN/AutoStar/AutoStarSupportVersion/trunk/Cspt_Code/AutoStarV700R002/AutoStar_T3lint/T3Web/t3lint/" ADD_DATE="1347007737" LAST_VISIT="0" LAST_MODIFIED="0">T3lint Svn地址</A> <DT><A HREF="http://localhost:8080/T3Web/pages/index.jsp" ADD_DATE="1347007737" LAST_VISIT="0" LAST_MODIFIED="0">T3LINT</A> <DT><A HREF="http://10.145.11.221/T3Web/pages/index.jsp" ADD_DATE="1347007737" LAST_VISIT="1347008078" LAST_MODIFIED="1347008078">T3LINTser</A> </DL><p> <DT><H3 FOLDED ADD_DATE="1347007737">xml</H3> <DL><p> <DT><A HREF="http://blog.csdn.net/yj_woku/article/details/6564540" ADD_DATE="1347007737" LAST_VISIT="0" LAST_MODIFIED="0">Xpath使用,从 Java 程序中查询 XML - yj_woku的专栏 - 博客频道 - CSDN.NET</A> </DL><p> <DT><H3 FOLDED ADD_DATE="1347007737">枚举</H3> <DL><p> <DT><A HREF="http://chinakite.iteye.com/category/9778" ADD_DATE="1347007737" LAST_VISIT="0" LAST_MODIFIED="0">chinakite的博客 - 我是一个程序员分类文章列表 - ITeye技术网站</A> <DT><A HREF="http://www.iteye.com/topic/129693" ADD_DATE="1347007737" LAST_VISIT="0" LAST_MODIFIED="0">J2SE新特性——枚举 - 入门技术 - New - ITeye论坛</A> </DL><p> <DT><H3 FOLDED ADD_DATE="1347007737">课件</H3> <DL><p> <DT><H3 FOLDED ADD_DATE="1347007737">接口和抽象类</H3> <DL><p> <DT><A HREF="http://jackleechina.iteye.com/blog/1555467" ADD_DATE="1347007737" LAST_VISIT="0" LAST_MODIFIED="0">接口和抽象类什么时候使用才合适? - - ITeye技术网站</A> <DT><A HREF="http://10.71.99.98/search/search.php?q=%BD%D3%BF%DA%BA%CD%B3%E9%CF%F3%C0%E0%B5%C4%CA%B9%D3%C3" ADD_DATE="1347007737" LAST_VISIT="0" LAST_MODIFIED="0">接口和抽象类的使用_研发安全版外网搜索引擎</A> <DT><A HREF="http://10.71.99.98/search/cache.php?q=%BD%D3%BF%DA%BA%CD%B3%E9%CF%F3%C0%E0%B5%C4%CA%B9%D3%C3&url=bXl0ZXN0fGh0dHA6Ly9jYWNoZS5iYWlkdS5jb20vYz9tPTlkNzhkNTEzZDlkNDMxZDk0ZjliOTU2OTdkNjJjMDEwNmE0MzgxMTMyYmE3YTMwMjBlYTI4NDQ5ZTM3MzJiNDA1MDExZThhYzU2NTYwNzcwZDJkMjdkMTcxNmRlNGI0YjlkZjIyMTczNDcxNDUwYjA4Y2I5OGU1ZGRjY2I4NTU5NWM5ZjU3M2Y2NzZhODc1NjYzZDIwZGU4OGIxODJhOWI2NmQ2MThmZWFlNmFmYWE3YWE2OTg0YWVhNTgzOGMwZjA1OGQ0NDA1MGRkMWFkZDQ0NzVlNWY4ZDI0YmI1MTMyZmVmNmM3MTU0MDQyNGJmY2JhNmY3OGFiNWU3Yzc4OTkyNDRhYjc0N2ZmZWIzNTNhNTY4YmYxODk1OTRlYzI3OWQ0NjY0MDgwYWY0MmVhNzg0ZGViJnA9OGIyYTk2NDY5ZDljMTdlYjJhYmQ5YjdkMGMxYzljMjAmdXNlcj1iYWlkdSZmbT1zYyZxdWVyeT0lQkQlRDMlQkYlREElQkElQ0QlQjMlRTklQ0YlRjMlQzAlRTAlQjUlQzQlQ0ElQjklRDMlQzMmcWlkPWExZjllNmIxMDdkM2VmNjYmcDE9NyZmYXN0PXl8bXl0ZXN0" ADD_DATE="1347007737" LAST_VISIT="0" LAST_MODIFIED="0">接口抽象类他们有什么用为什么用他们_心若止水_百度空间</A> </DL><p> </DL><p> <DT><A HREF="http://www.iciba.net" ADD_DATE="1347007737" LAST_VISIT="0" LAST_MODIFIED="0">金山词霸网站</A> <DT><H3 FOLDED ADD_DATE="1347007737">链接</H3> <DL><p> </DL><p> </DL><p> <DT><A HREF="http://10.141.16.201/cau" ADD_DATE="1347239194" LAST_VISIT="1348204893" LAST_MODIFIED="1348204893">网管安装系统</A> <DT><A HREF="http://daoshud1.iteye.com/blog/1006413" ADD_DATE="1347262676" LAST_VISIT="0" LAST_MODIFIED="0">java下载远程服务器文件 - - ITeye技术网站</A> <DT><A HREF="http://10.145.8.20:8080/nelist.jsp" ADD_DATE="1347327142" LAST_VISIT="0" LAST_MODIFIED="0">师日香网元</A> <DT><A HREF="http://xlaohe1.iteye.com/blog/1623385" ADD_DATE="1347509104" LAST_VISIT="0" LAST_MODIFIED="0">EL 获取字符串长度等 - 终于改了这名称 - ITeye技术网站</A> <DT><A HREF="http://kdlqbz.iteye.com/blog/400344" ADD_DATE="1347509112" LAST_VISIT="0" LAST_MODIFIED="0">jstl 获取字符串长度 字符串操作 - 成功是属于有准备的人 - ITeye技术网站</A> <DT><A HREF="http://zmx.iteye.com/blog/371011" ADD_DATE="1347612452" LAST_VISIT="0" LAST_MODIFIED="0">ResultSetMetaData的使用 - 我的IT技术杂谈 - ITeye技术网站</A> <DT><A HREF="http://luyao123127.iteye.com/blog/678765" ADD_DATE="1348036435" LAST_VISIT="1348455225" LAST_MODIFIED="1348455225">java.sql.Types的具体对应值 - 雄关漫道真如铁,而今迈步从头越 - ITeye技术网站</A> </DL><p> |
|||
struts2标签前台截取字符串长度 | struts2 | ||
<s:iterator value="forums" id="for"> <tr> <td align="center"> ${title } </td> <s:set name="str" value="#for.content"> <td align="center"> <s:if test="%{#str.length()>20}"> <s:property value="#str.substring(0,21)+'...'" /> </s:if> <s:else> <s:property value="str" /> </s:else> </td> </s:set> <td align="center"> ${createtime } </td> <td align="center"> ${type } </td> <td align="center"> <a href="./forum/deleteforum.action?forum.id=${id }" style="text-decoration: none">删除</a> </td> </tr> </s:iterator> |
|||
Spring配置文件2 | web | ||
<?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.5.xsd"> <bean id="dataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource"> <property name="driverClassName" value="com.mysql.jdbc.Driver"></property> <property name="url" value="jdbc:mysql://127.0.0.1:3306/laohutu"></property> <property name="username" value="root"></property> <property name="password" value="root"></property> </bean> <bean id="sessionFactory" class="org.springframework.orm.hibernate3.LocalSessionFactoryBean"> <property name="dataSource" ref="dataSource"></property> <property name="hibernateProperties"> <props> <prop key="hibernate.dialect"> org.hibernate.dialect.MySQLDialect </prop> <prop key="hibernate.hbm2ddl.auto"> update </prop> <prop key="hibernate.show_sql"> true </prop> <prop key="hibernate.format_sql"> true </prop> </props> </property> <property name="mappingResources"> <list> <value>com/hutu/po/Dept.hbm.xml</value></list> </property> </bean> <bean id="transactionManager" class="org.springframework.orm.hibernate3.HibernateTransactionManager"> <property name="sessionFactory" ref="sessionFactory"></property> </bean> <bean id="deptProxy" class="org.springframework.transaction.interceptor.TransactionProxyFactoryBean"> <property name="transactionManager" ref="transactionManager"></property> <property name="target" ref="deptservice"></property> <property name="transactionAttributes"> <props> <prop key="save*">PROPAGATION_REQUIRED</prop> <prop key="delete*">PROPAGATION_REQUIRED</prop> <prop key="update*">PROPAGATION_REQUIRED</prop> <prop key="find*">PROPAGATION_REQUIRED,readOnly</prop> </props> </property> </bean> <bean id="deptdao" class="com.hutu.dao.DeptDao"> <property name="sessionFactory" ref="sessionFactory"></property> </bean> <bean id="deptservice" class="com.hutu.service.DeptService"> <property name="deptdao" ref="deptdao"></property> </bean> <bean id="deptaction" class="com.hutu.action.DeptAction"> <property name="deptservice" ref="deptProxy"></property> </bean> </beans> |
|||
Spring配置文件1 | web | ||
<?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.5.xsd"> <bean id="datasource" class="org.springframework.jdbc.datasource.DriverManagerDataSource"> <property name="driverClassName" value="com.mysql.jdbc.Driver"></property> <property name="url" value="jdbc:mysql://127.0.0.1:3306/laohutu"></property> <property name="username" value="root"></property> <property name="password" value="root"></property> </bean> <bean id="sessionFactory" class="org.springframework.orm.hibernate3.LocalSessionFactoryBean"> <property name="dataSource" ref="dataSource"></property> <property name="hibernateProperties"> <props> <prop key="hibernate.dialect"> org.hibernate.dialect.MySQLDialect </prop> <prop key="hibernate.hbm2ddl.auto"> update </prop> <prop key="hibernate.show_sql"> true </prop> <prop key="hibernate.format_sql"> true </prop> </props> </property> <property name="mappingResources"> <list> <value>com/huawei/spring/po/Dept.hbm.xml</value></list> </property> </bean> <bean id="transactionManager" class="org.springframework.orm.hibernate3.HibernateTransactionManager"> <property name="sessionFactory" ref="sessionFactory"></property> </bean> <bean id="transactionInterceptor" class="org.springframework.transaction.interceptor.TransactionProxyFactoryBean"> <property name="transactionManager" ref="transactionManager"></property> <property name="transactionAttributes"> <props> <prop key="save*">PROPAGATION_REQUIRED</prop> <prop key="saveOrUpdate*">PROPAGATION_REQUIRED</prop> <prop key="delete*">PROPAGATION_REQUIRED</prop> <prop key="update*">PROPAGATION_REQUIRED</prop> <prop key="find*">PROPAGATION_REQUIRED,readOnly</prop> <prop key="get*">PROPAGATION_REQUIRED,readOnly</prop> </props> </property> </bean> <bean class="org.springframework.aop.framework.autoproxy.BeanNameAutoProxyCreator"> <property name="proxyTargetClass" > <value>true</value> </property> <property name="beanNames"> <value>*Service</value> </property> <property name="interceptorNames"> <list> <value>transactionInterceptor</value> </list> </property> </bean> <bean id="DeptDAO" class="com.huawei.spring.dao.DeptDAO"> <property name="sessionFactory"> <ref bean="sessionFactory" /> </property> </bean> <bean id="DeptService" class="com.huawei.spring.service.DeptService"> <property name="deptdao" ref="DeptDAO"></property> </bean> <bean id="DeptServlet" class="com.huawei.spring.servlet.DeptServlet"> <property name="deptservice" ref="DeptService"></property> </bean> </beans> |
|||
c标签新应用 | jsp | ||
<c:forEach items="${messages}" var="item" begin="0" end="9" step="1" varStatus="var"> …… </c:forEach> 上面这段代码的意思是针对messages 对象进行循环,循环中的每个循环项的引用变量为 item,循环范围是从0到9,每次步长为1。而varStatus则定义了一个循环状态变量var, 循环状态变量中保存了循环进行时的状态信息,包括以下几个属性: 属性 类型 说明 index int 当前循环索引号 count int 成员总数 first boolean 当前成员是否首位成员 last boolean 当前成员是否末尾成员 再看: <c:if test="${var.index % 2 == 0}"> * </c:if> |
|||
css3制作表格圆角 | css | ||
CSS3美化表格 大漠 2011-10-10 点击:1854 css3 table 19 Vote up! 在Web页面开发中,自从有了<div>的出现,大家就在讨论table。就出现了什么时候?如何使用div,什么时候?如何使用table的争论。虽然争论不少,但最后得出的结论是一致的:当你需要在页面中处理与数据时,table是首选之一。 制作一个表格容易,但是要设计一个表,让它爽心悦目,对于前端攻城师来说可是一个挑战——我们不仅需要考虑表格的外观好看,而且要提高用户的体验,让用户方便阅读表格,方便从表格中找到自己需要的数据。这样就需要你开动大脑进行思考,如果你和我一样不想去思考的话,可以参考Red Team的Red介绍的CSS3制作表格的教程——《Feature table design with CSS3》 当然你会说,CSS3是强大,但在老式的浏览器中怎么办?我只能说让你的用户在现代浏览器中体验最好的视觉效果,让那些守旧的用户去体验陈旧的美感。说了这么多,今天我们依旧跟着Red来学习——如何使用CSS3创建一个美丽而又爽心悦目的表格。这里我们还使用了jQuery让表格在老式的浏览器下也能运行正常。首先我们一起看一下我们今天要实现的表格效果: 目标 在这篇文章中,你将会看到如何使用CSS3来制作一些很酷而体验又强的表格。 没有图片的圆角效果 易于更新——没有多余的样式 用户体验性强,容易查找数据 HTML Markup 在介绍如何使用CSS3来修饰table之前,我们需要一个table的框架子,下面我们来创建一个普通的table <table class="bordered"> <thead> <tr> <th>#</th> <th>IMDB Top 10 Movies</th> <th>Year</th> </tr> </thead> <tbody> <tr> <td>1</td> <td>The Shawshank Redemption</td> <td>1994</td> </tr> <tr> <td>2</td> <td>The Godfather</td> <td>1972</td> </tr> <tr> <td>3</td> <td>The Godfather: Part II</td> <td>1974</td> </tr> <tr> <td>4</td> <td>The Good, the Bad and the Ugly</td> <td>1966</td> </tr> </tbody> </table> 在这里我们将这个表格设置了一个类名“bordered”,如果你需要创建一个斑马线表格,你只需将上面的类名换成“zebra”。现在有了HTML结构,接着就是使用样式来美化他了,大家一起接着往下看吧。 CSS Code <style type="text/css"> *{margin: 0;padding: 0;} body { padding: 40px 100px; } .demo { width: 600px; margin: 40px auto; font-family: 'trebuchet MS', 'Lucida sans', Arial; font-size: 14px; color: #444; } table { *border-collapse: collapse; /* IE7 and lower */ border-spacing: 0; width: 100%; } /*========bordered table========*/ .bordered { border: solid #ccc 1px; -moz-border-radius: 6px; -webkit-border-radius: 6px; border-radius: 6px; -webkit-box-shadow: 0 1px 1px #ccc; -moz-box-shadow: 0 1px 1px #ccc; box-shadow: 0 1px 1px #ccc; } .bordered tr { -o-transition: all 0.1s ease-in-out; -webkit-transition: all 0.1s ease-in-out; -moz-transition: all 0.1s ease-in-out; -ms-transition: all 0.1s ease-in-out; transition: all 0.1s ease-in-out; } .bordered .highlight, .bordered tr:hover { background: #fbf8e9; } .bordered td, .bordered th { border-left: 1px solid #ccc; border-top: 1px solid #ccc; padding: 10px; text-align: left; } .bordered th { background-color: #dce9f9; background-image: -webkit-gradient(linear, left top, left bottom, from(#ebf3fc), to(#dce9f9)); background-image: -webkit-linear-gradient(top, #ebf3fc, #dce9f9); background-image: -moz-linear-gradient(top, #ebf3fc, #dce9f9); background-image: -ms-linear-gradient(top, #ebf3fc, #dce9f9); background-image: -o-linear-gradient(top, #ebf3fc, #dce9f9); background-image: linear-gradient(top, #ebf3fc, #dce9f9); filter: progid:DXImageTransform.Microsoft.gradient(GradientType=0, startColorstr=#ebf3fc, endColorstr=#dce9f9); -ms-filter: "progid:DXImageTransform.Microsoft.gradient (GradientType=0, startColorstr=#ebf3fc, endColorstr=#dce9f9)"; -webkit-box-shadow: 0 1px 0 rgba(255,255,255,.8) inset; -moz-box-shadow:0 1px 0 rgba(255,255,255,.8) inset; box-shadow: 0 1px 0 rgba(255,255,255,.8) inset; border-top: none; text-shadow: 0 1px 0 rgba(255,255,255,.5); } .bordered td:first-child, .bordered th:first-child { border-left: none; } .bordered th:first-child { -moz-border-radius: 6px 0 0 0; -webkit-border-radius: 6px 0 0 0; border-radius: 6px 0 0 0; } .bordered th:last-child { -moz-border-radius: 0 6px 0 0; -webkit-border-radius: 0 6px 0 0; border-radius: 0 6px 0 0; } .bordered tr:last-child td:first-child { -moz-border-radius: 0 0 0 6px; -webkit-border-radius: 0 0 0 6px; border-radius: 0 0 0 6px; } .bordered tr:last-child td:last-child { -moz-border-radius: 0 0 6px 0; -webkit-border-radius: 0 0 6px 0; border-radius: 0 0 6px 0; } /*----------------------*/ .zebra td, .zebra th { padding: 10px; border-bottom: 1px solid #f2f2f2; } .zebra .alternate, .zebra tbody tr:nth-child(even) { background: #f5f5f5; -webkit-box-shadow: 0 1px 0 rgba(255,255,255,.8) inset; -moz-box-shadow:0 1px 0 rgba(255,255,255,.8) inset; box-shadow: 0 1px 0 rgba(255,255,255,.8) inset; } .zebra th { text-align: left; text-shadow: 0 1px 0 rgba(255,255,255,.5); border-bottom: 1px solid #ccc; background-color: #eee; background-image: -webkit-gradient(linear, left top, left bottom, from(#f5f5f5), to(#eee)); background-image: -webkit-linear-gradient(top, #f5f5f5, #eee); background-image: -moz-linear-gradient(top, #f5f5f5, #eee); background-image: -ms-linear-gradient(top, #f5f5f5, #eee); background-image: -o-linear-gradient(top, #f5f5f5, #eee); background-image: linear-gradient(top, #f5f5f5, #eee); filter: progid:DXImageTransform.Microsoft.gradient(GradientType=0, startColorstr=#f5f5f5, endColorstr=#eeeeee); -ms-filter: "progid:DXImageTransform.Microsoft.gradient (GradientType=0, startColorstr=#f5f5f5, endColorstr=#eeeeee)"; } .zebra th:first-child { -moz-border-radius: 6px 0 0 0; -webkit-border-radius: 6px 0 0 0; border-radius: 6px 0 0 0; } .zebra th:last-child { -moz-border-radius: 0 6px 0 0; -webkit-border-radius: 0 6px 0 0; border-radius: 0 6px 0 0; } .zebra tfoot td { border-bottom: 0; border-top: 1px solid #fff; background-color: #f1f1f1; } .zebra tfoot td:first-child { -moz-border-radius: 0 0 0 6px; -webkit-border-radius: 0 0 0 6px; border-radius: 0 0 0 6px; } .zebra tfoot td:last-child { -moz-border-radius: 0 0 6px 0; -webkit-border-radius: 0 0 6px 0; border-radius: 0 0 6px 0; } </style> 通过上面的代码,我们在现代浏览器中就能看到一个美化好的表格了,如DEMO所示。 效果出来了,但我们追求的不只是效果,需要知道是怎么一回事,这样才能是自己的东西。下面我们就来细化一下上面的代码: 1、表格圆角效果 这里有一个技巧,在制作表格圆角效果之前,我们有必要先完成这一步。表格的“border-collapse”的默认值是“separate”,我们需要将其值设置为“0”,也就是“border-spacing:0;” table { *border-collapse: collapse; /* IE7 and lower */ border-spacing: 0; } 为了能兼容IE7以及更低的浏览器我们需要加上一个特殊的属性“border-collapse”,并且将其值设置为“collapse”。 现在我们一起来看圆角的制作 /*==整个表格设置了边框,并设置了圆角==*/ .bordered { border: solid #ccc 1px; -moz-border-radius: 6px; -webkit-border-radius: 6px; border-radius: 6px; } /*==表格头部第一个th需要设置一个左上角圆角==*/ .bordered th:first-child { -moz-border-radius: 6px 0 0 0; -webkit-border-radius: 6px 0 0 0; border-radius: 6px 0 0 0; } /*==表格头部最后一个th需要设置一个右上角圆角==*/ .bordered th:last-child { -moz-border-radius: 0 6px 0 0; -webkit-border-radius: 0 6px 0 0; border-radius: 0 6px 0 0; } /*==表格最后一行的第一个td需要设置一个左下角圆角==*/ .bordered tr:last-child td:first-child { -moz-border-radius: 0 0 0 6px; -webkit-border-radius: 0 0 0 6px; border-radius: 0 0 0 6px; } /*==表格最后一行的最后一个td需要设置一个右下角圆角==*/ .bordered tr:last-child td:last-child { -moz-border-radius: 0 0 6px 0; -webkit-border-radius: 0 0 6px 0; border-radius: 0 0 6px 0; } 由于我们在table中设置了一个边框,为了俱有圆角效果,我需要在表格的四个角的单元格上分别设置圆角效果,并且其圆角效果需要和表格的圆角值大小一样,反之,如果你在table上没有设置边框,我们只需要在表格的四个角落的单元素设置圆角,就能实现圆角效果,比如DEMO中的“zebra”表格 /*==表格头部第一个th需要设置一个左上角圆角==*/ .zebra th:first-child { -moz-border-radius: 6px 0 0 0; -webkit-border-radius: 6px 0 0 0; border-radius: 6px 0 0 0; } /*==表格头部最后一个th需要设置一个右上角圆角==*/ .zebra th:last-child { -moz-border-radius: 0 6px 0 0; -webkit-border-radius: 0 6px 0 0; border-radius: 0 6px 0 0; } /*==表格最后一行的第一个td需要设置一个左下角圆角==*/ .zebra tfoot td:first-child { -moz-border-radius: 0 0 0 6px; -webkit-border-radius: 0 0 0 6px; border-radius: 0 0 0 6px; } /*==表格最后一行的最后一个td需要设置一个右下角圆角==*/ .zebra tfoot td:last-child { -moz-border-radius: 0 0 6px 0; -webkit-border-radius: 0 0 6px 0; border-radius: 0 0 6px 0; } 在上面的代码中,我们使用了许多CSS3的伪类选择器,如果你对这一部分还不怎么熟悉,我建议你阅读本站的相关教程: 《CSS3选择器——基本选择器》 《CSS3选择器——属性选择器》 《CSS3选择器——伪类选择器》 除了选择器使用了CSS3外,上面还采用了好多个CSS3的相关属性,比如说 A、box-shadow制作表格的阴影 .bordered { -webkit-box-shadow: 0 1px 1px #ccc; -moz-box-shadow: 0 1px 1px #ccc; box-shadow: 0 1px 1px #ccc; } .zebra tbody tr:nth-child(even) { -webkit-box-shadow: 0 1px 0 rgba(255,255,255,.8) inset; -moz-box-shadow:0 1px 0 rgba(255,255,255,.8) inset; box-shadow: 0 1px 0 rgba(255,255,255,.8) inset; } B、transition制作hover过渡效果 .bordered tr { -o-transition: all 0.1s ease-in-out; -webkit-transition: all 0.1s ease-in-out; -moz-transition: all 0.1s ease-in-out; -ms-transition: all 0.1s ease-in-out; transition: all 0.1s ease-in-out; } .bordered tr:hover { background: #fbf8e9; } C、gradient制作表头渐变色 .bordered th { background-color: #dce9f9; background-image: -webkit-gradient(linear, left top, left bottom, from(#ebf3fc), to(#dce9f9)); background-image: -webkit-linear-gradient(top, #ebf3fc, #dce9f9); background-image: -moz-linear-gradient(top, #ebf3fc, #dce9f9); background-image: -ms-linear-gradient(top, #ebf3fc, #dce9f9); background-image: -o-linear-gradient(top, #ebf3fc, #dce9f9); background-image: linear-gradient(top, #ebf3fc, #dce9f9); filter: progid:DXImageTransform.Microsoft.gradient(GradientType=0, startColorstr=#ebf3fc, endColorstr=#dce9f9); -ms-filter: "progid:DXImageTransform.Microsoft.gradient (GradientType=0, startColorstr=#ebf3fc, endColorstr=#dce9f9)"; } .zebra th { background-color: #eee; background-image: -webkit-gradient(linear, left top, left bottom, from(#f5f5f5), to(#eee)); background-image: -webkit-linear-gradient(top, #f5f5f5, #eee); background-image: -moz-linear-gradient(top, #f5f5f5, #eee); background-image: -ms-linear-gradient(top, #f5f5f5, #eee); background-image: -o-linear-gradient(top, #f5f5f5, #eee); background-image: linear-gradient(top, #f5f5f5, #eee); filter: progid:DXImageTransform.Microsoft.gradient(GradientType=0, startColorstr=#f5f5f5, endColorstr=#eeeeee); -ms-filter: "progid:DXImageTransform.Microsoft.gradient (GradientType=0, startColorstr=#f5f5f5, endColorstr=#eeeeee)"; } 其中还使用了text-shadow来制作文字阴影效果,rgba改变颜色透明度等。 2、jQuery处理hover效果 大家从所周知,在IE6下“:hover”只有a元素支持,如果需要在IE6支持下面的效果: .bordered tr:hover { background: #fbf8e9; } 如果需要在IE6下解决上面的CSS样式效果,我们就需要借助jQuery来模拟“:hover”效果: $('.bordered tr').mouseover(function(){ $(this).addClass('highlight'); }).mouseout(function(){ $(this).removeClass('highlight'); }); 同时需要在你的样式中加入“.highlight”样式代码: .highlight { background: #fbf8e9; } 这样一来我们也在IE6下实现了“.bordered tr:hover”悬停效果。有关于“:hover”在IE6下的处理方法,大家感兴趣的会还可以点击《浏览器兼容之旅的第四站:IE常见Bug——part2》。这里还存在一个问题,由于“:hover”只是在IE6下不能运用在别的元素上,但在其他浏览器上是不会出现这样的Bug,可是我们就这样运用上面的jQuery代码的话,将在所有浏览器中都会运行,这样就离我们最初的想法有点不同,为了只让IE6解析上面的代码,我们就需要把这段代码加上一个条件,让它只能在IE6下识别。具体操作大家可以点击Red的《How to solve common IE bugs》一文,同时也你可以到本站阅读前面的教程——《浏览器兼容之旅的第一站:如何创建条件样式》。 3、jQuery实现斑马线表格效果 这里有一个问题同样会发生在IE6中,那就是CSS3的选择器——“:nth-child(even)”,在IE6中也是沅法识别的,这样就造成了下面这段代码在IE6下是没有任何效果的 .zebra tbody tr:nth-child(even) { background: #f5f5f5; -webkit-box-shadow: 0 1px 0 rgba(255,255,255,.8) inset; -moz-box-shadow:0 1px 0 rgba(255,255,255,.8) inset; box-shadow: 0 1px 0 rgba(255,255,255,.8) inset; } 为了能让所有浏览器解决表格偶数行高亮,就需要使用jQuery来实现 $(".zebra tr:even").addClass('alternate'); 同样需要在你的样式文字中加入: .alternate { background: #f5f5f5; -webkit-box-shadow: 0 1px 0 rgba(255,255,255,.8) inset; -moz-box-shadow:0 1px 0 rgba(255,255,255,.8) inset; box-shadow: 0 1px 0 rgba(255,255,255,.8) inset; } 这样一来,我们也借助jQuery解决了IE6下的斑马线效果,当然也需要记得前提条件中,不然在部分浏览器中就重复使用了。 兼容的浏览器 如果在你的代码中运用了上面的jQuery代码话,在IE6下也将会有不错的效果,只别表格在IE6-8下的外观将丢失圆角,阴影等效果,如图所示: 加上我们这里在讨论的是使用 CSS3来美化表格,所以我们不需要考虑IE下太我的问题,因此你要是现在还在使用那该死的IE话,我强烈建议你马上安装:Mozilla Firefox、Google Chrome、Safari或者Opera等现代浏览器,你将能在这些浏览器中看到一个很美很酷的表格。 总结 在这个教程中我们学习了如何使用CSS3来美化你的表格。在结束之前稍作规纳:“在本次教程中,我们主要使用了CSS3的相关属性来美化一个表格,主要涉及到了CSS3的选择器,比如说CSS3选择器——伪类选择器,用来控制选中的单元格;而且在制作效果中,使用了CSS3的一些常用属性,border-radius来表格的圆角或单元格的圆角效果、gradient来制作表格标题的背景效果、box-shadow制作了表格的阴影效果以使用transition来实现动画效果,而且还使用了text-shadow制作文字阴影,rgba改元素元素相关属性的透明度。最后为了让IE6下具有相同的“:hover”和“斑马线”效果,我们还借助了jQuery和IE的条件注解来实现效果。” |
|||
js排序 | javascript | ||
<script type="text/javascript"> //函数sorter接受两个参数,返回一个数值,如果这个值大于0,则说明第一个参数大于第二个参数, //如果返回值为0,说明两个参数相等,返回值小于0,则第一个参数小于第二个参数,sort根据这 //个返回值来进行最终的排序: function sorter(a, b){ return a - b; } var array = [10, 23, 44, 58, 106, 235]; //系统默认,这个可以对字母进行排序,如果只是数据就,建议用自定排序 array.sort(sorter); for(var i=0;i<array.length;i++){ alert(array[i]); } array.sort(function(a,b){return a-b;});//正序 for(var i=0;i<array.length;i++){ alert(array[i]); } array.sort(function(a,b){return b-a;});//反序 for(var i=0;i<array.length;i++){ alert(array[i]); } </script> |
|||
xml多中解析方式 | |||
package com.chinasoft.parsexml; import java.io.File; import java.io.FileOutputStream; import java.io.IOException; import java.io.InputStream; import javax.xml.parsers.DocumentBuilder; import javax.xml.parsers.DocumentBuilderFactory; import javax.xml.parsers.ParserConfigurationException; import javax.xml.transform.Transformer; import javax.xml.transform.TransformerConfigurationException; import javax.xml.transform.TransformerException; import javax.xml.transform.TransformerFactory; import javax.xml.transform.dom.DOMSource; import javax.xml.transform.stream.StreamResult; import org.w3c.dom.Document; import org.w3c.dom.Element; import org.w3c.dom.Node; import org.w3c.dom.NodeList; import org.w3c.dom.Text; import org.xml.sax.SAXException; public class W3CParseXml { public static void main(String[] args) { read(); } private static void read() { DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance(); try { DocumentBuilder builder = dbf.newDocumentBuilder(); InputStream in = W3CParseXml.class.getClassLoader() .getResourceAsStream("test.xml"); Document doc = builder.parse(in); // root <university> Element root = doc.getDocumentElement(); if (root == null) { return; } System.err.println(root.getAttribute("name")); // all college node NodeList collegeNodes = root.getChildNodes(); if (collegeNodes == null) return; for (int i = 0; i < collegeNodes.getLength(); i++) { Node college = collegeNodes.item(i); if (college != null && college.getNodeType() == Node.ELEMENT_NODE) { System.err.println("\t" + college.getAttributes().getNamedItem("name") .getNodeValue()); // all class node NodeList classNodes = college.getChildNodes(); if (classNodes == null) continue; for (int j = 0; j < classNodes.getLength(); j++) { Node clazz = classNodes.item(j); if (clazz != null && clazz.getNodeType() == Node.ELEMENT_NODE) { System.err.println("\t\t" + clazz.getAttributes() .getNamedItem("name") .getNodeValue()); // all student node NodeList studentNodes = clazz.getChildNodes(); if (studentNodes == null) continue; for (int k = 0; k < studentNodes.getLength(); k++) { Node student = studentNodes.item(k); if (student != null && student.getNodeType() == Node.ELEMENT_NODE) { System.err.print("\t\t\t" + student.getAttributes() .getNamedItem("name") .getNodeValue()); System.err.print(" " + student.getAttributes() .getNamedItem("sex") .getNodeValue()); System.err.println(" " + student.getAttributes() .getNamedItem("age") .getNodeValue()); } } } } } } } catch (ParserConfigurationException e) { e.printStackTrace(); } catch (SAXException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } } public void wrire() { try { DocumentBuilderFactory factory = DocumentBuilderFactory .newInstance(); DocumentBuilder builder = factory.newDocumentBuilder(); InputStream is = W3CParseXml.class.getResourceAsStream("test.xml"); Document document = builder.parse(is); // root (university) Element root = document.getDocumentElement(); if (root == null) { return; } // 修改属性 root.setAttribute("name", "tsu"); NodeList collageNodes = root.getChildNodes(); if (collageNodes != null) { for (int i = 0; i < collageNodes.getLength(); i++) { // 删除节点 Node collage = collageNodes.item(i); if (collage.getNodeType() == Node.ELEMENT_NODE) { String collageName = collageNodes.item(i) .getAttributes().getNamedItem("name") .getNodeValue(); if ("c1".equalsIgnoreCase(collageName) || "c2".equalsIgnoreCase(collageName)) { root.removeChild(collage); } else if ("c3".equalsIgnoreCase(collageName)) { Element newChild = document.createElement("class"); newChild.setAttribute("name", "c4"); collage.appendChild(newChild); } } } } Element addCollege = document.createElement("college"); addCollege.setAttribute("name", "c5"); root.appendChild(addCollege); Text text = document.createTextNode("text"); addCollege.appendChild(text); // 将修改后的文档保存到文件 TransformerFactory transFactory = TransformerFactory.newInstance(); Transformer transFormer = transFactory.newTransformer(); DOMSource domSource = new DOMSource(document); File file = new File("src/dom-modify.xml"); if (file.exists()) { file.delete(); } file.createNewFile(); FileOutputStream out = new FileOutputStream(file); StreamResult xmlResult = new StreamResult(out); transFormer.transform(domSource, xmlResult); System.out.println(file.getAbsolutePath()); } catch (ParserConfigurationException e) { e.printStackTrace(); } catch (SAXException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } catch (TransformerConfigurationException e) { // TODO Auto-generated catch block e.printStackTrace(); } catch (TransformerException e) { // TODO Auto-generated catch block e.printStackTrace(); } } } package com.chinasoft.parsexml; import java.io.File; import java.io.FileWriter; import java.io.IOException; import java.io.InputStream; import java.util.List; import org.dom4j.Attribute; import org.dom4j.Document; import org.dom4j.DocumentException; import org.dom4j.DocumentHelper; import org.dom4j.Element; import org.dom4j.io.OutputFormat; import org.dom4j.io.SAXReader; import org.dom4j.io.XMLWriter; public class Dom4jParseXml { private static final String filePath = "src/text-modify.xml"; public static void main(String[] args) { write(filePath); read(); } /** * * @param outFile */ public static void write(String outFile) { try { // 创建文档对象 Document document = DocumentHelper.createDocument(); // 创建节点 Element universtity = document.addElement("university"); // 给节点添加属性 universtity.addAttribute("name", "fudan"); // 添加注释 universtity.addComment("这是根节点"); for (int i = 0; i < 3; i++) { Element collage = universtity.addElement("collage"); collage.addAttribute("name", "张明" + i); collage.addText("text"); } // collage.setText("text"); // 定义xml写入格式 OutputFormat format = new OutputFormat(); format.setIndent(true); format.setEncoding("GBK"); format.setNewlines(true); File file = new File(outFile); if (file.exists()) { file.delete(); } file.createNewFile(); XMLWriter out = new XMLWriter(new FileWriter(file), format); out.write(document); out.flush(); out.close(); } catch (IOException e) { e.printStackTrace(); } } /** * 解析xml文件 */ public static void read() { try { SAXReader reader = new SAXReader(); InputStream is = Dom4jParseXml.class .getResourceAsStream("test.xml"); org.dom4j.Document doc = reader.read(is); // 获取根节点 Element university = doc.getRootElement(); readNode(university, " "); } catch (DocumentException e) { e.printStackTrace(); } } @SuppressWarnings( { "unchecked", "unchecked" }) private static void readNode(Element root, String prefix) { if (root == null) { return; } // 获取属性 List<Attribute> attrs = root.attributes(); if (attrs != null && attrs.size() > 0) { System.err.print(prefix); for (Attribute attr : attrs) { System.err.print(attr.getValue() + " "); } System.err.println(); } // 获取他的子节点 List<Element> childNodes = root.elements(); if (childNodes == null) { return; } else { prefix += "\t"; for (Element e : childNodes) { readNode(e, prefix); } } } } |
|||
css | css | ||
伪类定义顺序 a:link, a:visited, a:hover, a:actived http://happmaoo.iteye.com/blog/912290 p:first-line{ background-color:red;这是段落中第一行背景色 } p{ text-indent:50px;块中首行缩进 } p:first-letter {首字变大 font-size : 300%; font-weight : bold; float : left; margin-right: 3px; } |
|||
servlet登录拦截器 | java | ||
烂机器一般主要用在网页设计中,主要过滤后台,防止没有登录的用户对数据进行乱改乱添加,不过对前台的页面一般还是可以访问的,因为前台主要是一些超链接,和一些action请求。如: <!-- 登录过滤器 --> <filter> <filter-name>onlineFilter</filter-name> <filter-class> com.seosum.infosub.util.OnlineFilter </filter-class> </filter> <filter-mapping> <filter-name>onlineFilter</filter-name> <url-pattern>/pages/back/*</url-pattern> </filter-mapping> -------------------------------------------------------------------------------------------- import java.io.IOException; import javax.servlet.Filter; import javax.servlet.FilterChain; import javax.servlet.FilterConfig; import javax.servlet.RequestDispatcher; import javax.servlet.ServletException; import javax.servlet.ServletRequest; import javax.servlet.ServletResponse; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import javax.servlet.http.HttpSession; public class OnlineFilter extends HttpServlet implements Filter{ /** * */ private static final long serialVersionUID = 1L; @Override public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException { // 这里设置如果没有登录将要转发到的页面 RequestDispatcher dispatcher = request.getRequestDispatcher("/index.jsp"); HttpServletRequest req = (HttpServletRequest) request; HttpServletResponse res = (HttpServletResponse) response; HttpSession session = req.getSession(true); String username = (String)session.getAttribute("username"); if(username == null || "".equals(username.trim())){ // 跳转到登录页面 dispatcher.forward(request, response); res.setHeader("Cache-Control", "no-store"); res.setDateHeader("Expires", 0); res.setHeader("Pragma", "no-cache"); }else{ chain.doFilter(request, response); } } @Override public void init(FilterConfig filterConfig) throws ServletException { // TODO Auto-generated method stub } } <!-- 登录过滤器 --> <filter> <filter-name>onlineFilter</filter-name> <filter-class> com.huawei.filter.util.OnlineFilter </filter-class> </filter> <filter-mapping> <filter-name>onlineFilter</filter-name> <url-pattern>/pages/*</url-pattern>//过滤掉拥有在pages下的页面,不过滤action </filter-mapping> <struts> <package name="login" extends="struts-default"> <action name="add" class="com.huawei.filter.action.LoginAction" method="addLogin"> <result name="success" type="redirect">list.action</result> <result name="fail">/pages/error.jsp</result> </action> <action name="list" class="com.huawei.filter.action.LoginAction" method="listLogin"> <result name="success">/pages/listlogin.jsp</result> </action> </package> </struts> |
|||
纯js实现ajax功能【用户名是否存在验证 】 | javascript | ||
function checkFnameExists() { if(document.all.fname.value == null || document.all.fname.value == "") { alert("请输入用户名"); } else { //javascript中特有的一个函数 window.showModelessDialog("checkFnameExists.do?check_fname="+document.all.fname.value); } } <input name="fname"> //html中的代码,点击调用 <input type="button" value="检测" onclick="checkFnameExists();"/> //后台代码 public class CheckFnameExistsAction extends Action { private OptionSaleman optionsaleman; public OptionSaleman getOptionsaleman() { return optionsaleman; } public void setOptionsaleman(OptionSaleman optionsaleman) { this.optionsaleman = optionsaleman; } public ActionForward execute(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) { RegisterForm registerForm = (RegisterForm) form; String fname = request.getParameter("check_fname"); List listOptionSalemanName = optionsaleman.findByFname(fname.trim()); Iterator iter = listOptionSalemanName.iterator(); if (iter.hasNext()) { try { PrintWriter pw = response.getWriter(); pw.print("This username is existing"); } catch (IOException e) { e.printStackTrace(); } } else { try { PrintWriter pw = response.getWriter(); pw.print("You can use this username"); } catch (IOException e) { e.printStackTrace(); } } return null; } } |
|||
登录验证码 | jsp | ||
package com.itJob.wit.ImageValidate; import java.awt.Color; import java.awt.Font; import java.awt.Graphics; import java.awt.image.BufferedImage; import java.io.IOException; import java.util.Random; import javax.imageio.ImageIO; import javax.servlet.ServletException; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; /** * 描述:画验证码类 * * @author 吴进 2008-5-11 * <p> * */ public class ImageValidateCodeServlet extends HttpServlet { /** * Constructor of the object. */ public ImageValidateCodeServlet() { super(); } /** * Destruction of the servlet. <br> */ public void destroy() { super.destroy(); } public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { doPost(request, response); } public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { // 首先设置页面不缓存 response.setHeader("pragma", "po-cache"); response.setHeader("cache-control", "no-cache"); response.setDateHeader("Expires", 0); // 定义图片的宽度和高度 int width = 100, height = 40; // 创建一个图像对象 BufferedImage image = new BufferedImage(width, height, BufferedImage.TYPE_INT_RGB); // 得到图像的环境对象 Graphics g = image.createGraphics(); Random random = new Random(); // 用随机颜色填充图像背景 g.setColor(getRandBgcolor(180, 250)); g.fillRect(0, 0, width, height); for (int i = 0; i < 5; i++) { g.setColor(getRandBgcolor(50, 100)); int x = random.nextInt(width); int y = random.nextInt(height); g.drawOval(x, y, 4, 4); } // 设置字体,下面准备画随机数 g.setFont(new Font("", Font.PLAIN, 40)); // 随机数字符串 StringBuffer sbRandomValidateCode = new StringBuffer(); for (int i = 0; i < 4; i++) { // 生成四个数字字符 String rand = String.valueOf(random.nextInt(10)); sbRandomValidateCode.append(rand); // 生成随机颜色 g.setColor(new Color(20 + random.nextInt(80), 20 + random .nextInt(100), 20 + random.nextInt(90))); // 将随机数字画在图像上 g.drawString(rand, (17 + random.nextInt(3)) * i + 8, 34); // 生成干扰线 for (int k = 0; k < 12; k++) { int x = random.nextInt(width); int y = random.nextInt(height); int xl = random.nextInt(9); int yl = random.nextInt(9); g.drawLine(x, y, x + xl, y + yl); } } // 将生成的随机数字字符串写入Session request.getSession().setAttribute("randomValidateCode", sbRandomValidateCode.toString()); // 使图像生效 g.dispose(); // 输出图像到页面 ImageIO.write(image, "JPEG", response.getOutputStream()); } /** * 描述:产生随机背景色 * * @param fc * @param bc * @return */ public Color getRandBgcolor(int fc, int bc) { Random random = new Random(); if (fc > 255) { fc = 255; } if (bc > 255) { bc = 255; } int r = fc + random.nextInt(bc - fc); int g = fc + random.nextInt(bc - fc); int b = fc + random.nextInt(bc - fc); return new Color(r, g, b); } /** * Initialization of the servlet. <br> * * @throws ServletException * if an error occurs */ public void init() throws ServletException { } } <img src="<%=request.getContextPath()%>/ImageValidateCodeServlet" height="21" width="58"> <!-- 验证码 --> <servlet> <servlet-name>ImageValidateCodeServlet</servlet-name> <servlet-class>com.itJob.wit.ImageValidate.ImageValidateCodeServlet</servlet-class> </servlet> <servlet-mapping> <servlet-name>ImageValidateCodeServlet</servlet-name> <url-pattern>/ImageValidateCodeServlet</url-pattern> </servlet-mapping> |
|||
中文过滤器 | 中文过滤器 | ||
<!-- web.xml 中的过滤器配置,过滤中文 --> <filter> <filter-name>CharacterEncoding</filter-name> <filter-class> com.itJob.wit.util.SetCharacterEncodingFilter </filter-class> <init-param> <param-name>encoding</param-name> <param-value>UTF-8</param-value> </init-param> <init-param> <param-name>ignore</param-name> <param-value>true</param-value> </init-param> </filter> <filter-mapping> <filter-name>CharacterEncoding</filter-name> <url-pattern>/*</url-pattern> </filter-mapping> package com.itJob.wit.util; 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; /** * 描述:中文过滤器 * @author TEAMWORK * <p> */ public class SetCharacterEncodingFilter implements Filter { protected String encoding = null; protected FilterConfig filterConfig = null; protected boolean ignore = true; public void destroy() { this.encoding = null; this.filterConfig = null; } public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException { if (ignore && (request.getCharacterEncoding() == null)) { String encoding = selectEncoding(request); if (encoding != null) { request.setCharacterEncoding(encoding); } } chain.doFilter(request, response); } public void init(FilterConfig request) throws ServletException { this.filterConfig = request; 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); } } |
|||
超链接样式 | html | ||
a:link{ /*超链接正常状态下的样式*/ color:#005799; /*深蓝*/ text-decoration:none; /*无下划线*/ } a:visited{ /*访问过的超链接*/ color:#000000; /*黑色*/ text-decoration:none; /*无下划线*/ } a:hover{ /*鼠标经过时的超链接*/ color:#FFFF00; /*黄色*/ text-decoration:underline; /*下划线*/ } |
|||
js日期 | |||
<script type="text/javascript"> <!-- var myDate = new Date(); var year = myDate.getYear(); //获取当前年份(FireFox显示2位,IE正常) var fullYear = myDate.getFullYear(); //获取完整的年份(4位,1970-????) var month = myDate.getMonth() + 1; //获取当前月份(0-11,0代表1月,单独使用需要加1) var date = myDate.getDate(); //获取当前日(1-31) var day = myDate.getDay(); //获取当前星期X(0-6,0代表星期天) var time = myDate.getTime(); //获取当前时间(从1970.1.1开始的毫秒数) var hours = myDate.getHours(); //获取当前小时数(0-23) var minutes = myDate.getMinutes(); //获取当前分钟数(0-59) var seconds = myDate.getSeconds(); //获取当前秒数(0-59) var milliSeconds = myDate.getMilliseconds(); //获取当前毫秒数(0-999) var myDated = myDate.toLocaleDateString(); //获取当前日期 2011年12月08日 var mytime = myDate.toLocaleTimeString(); //获取当前时间 11:11:25 var myDateTime = myDate.toLocaleString(); //获取日期与时间 2011年12月08日 11:11:25 //--> </script> |
|||
svn编程 | svn | ||
API文档: http://svnkit.com/javadoc/org/tmatesoft/svn/core/package-summary.html 例子路径: https://wiki.svnkit.com/Managing_A_Working_Copy 别人写的例子: http://eatsalt.blog.163.com/blog/static/879402662009102402949523/ public class DefaultSVNResourceGenerator extends AbstractLogEnabled implements SVNResourceGenerator { private SVNClientManager svnClientManager; private SVNURL repositoryURL; private void init(String svnUrl, String svnUser, String svnPassword) throws SVNException { DAVRepositoryFactory.setup(); repositoryURL = SVNURL.parseURIEncoded(svnUrl); ISVNOptions options = SVNWCUtil.createDefaultOptions(true); ISVNAuthenticationManager authManager = SVNWCUtil.createDefaultAuthenticationManager( svnUser, svnPassword); svnClientManager = SVNClientManager.newInstance(options, authManager); } public boolean resourceCheckout(String svnUrl, String projectPath, String svnUser, String svnPassword) throws Exception { File projectDir = new File(projectPath); if (projectDir.exists()) deleteDir(projectDir); if (!projectDir.exists()) projectDir.mkdirs(); init(svnUrl, svnUser, svnPassword); SVNUpdateClient updateClient = svnClientManager.getUpdateClient(); updateClient.setIgnoreExternals(false); updateClient.doCheckout(repositoryURL, projectDir, SVNRevision.HEAD, SVNRevision.HEAD, SVNDepth.INFINITY, true); deleteSvnDir(projectDir); return true; } public void deleteSvnDir(File file) { if (file.isDirectory()) { File svnDir = new File(file, ".svn"); if (svnDir.exists() && svnDir.isDirectory()) deleteDir(svnDir); File[] fileArray = file.listFiles(); for (File f : fileArray) deleteSvnDir(f); } } public void deleteDir(File file) { if (file.isDirectory()) { File[] files = file.listFiles(); for (File f : files) deleteDir(f); } file.delete(); } } |
|||
svn下载工程 | svn | ||
import java.io.File; import java.util.ArrayList; import java.util.List; import org.tmatesoft.svn.core.SVNDepth; import org.tmatesoft.svn.core.SVNException; import org.tmatesoft.svn.core.SVNURL; import org.tmatesoft.svn.core.internal.io.dav.DAVRepositoryFactory; import org.tmatesoft.svn.core.internal.wc.DefaultSVNOptions; import org.tmatesoft.svn.core.wc.ISVNOptions; import org.tmatesoft.svn.core.wc.SVNClientManager; import org.tmatesoft.svn.core.wc.SVNRevision; import org.tmatesoft.svn.core.wc.SVNUpdateClient; import org.tmatesoft.svn.core.wc.SVNWCUtil; public class CheckOutProject implements IDownload { private static final String NATIVE = "native"; private static ISVNOptions options = SVNWCUtil.createDefaultOptions(true); private List<String> gProFolderList = new ArrayList<String>(); public List<String> getGProFolderList() { return gProFolderList; } public boolean checkout() { ProjectService projectService = new ProjectService(); List<Project> listProject = projectService.findAllList(); if (listProject == null) { Log.errorToDataBase("数据库配置工程信息为空"); return false; } for (Project project : listProject) { if (project == null) { continue; } String t3docRootName = project.getT3docRootName(); String svnUrl = project.getSvn(); String svnUserName = project.getUserName(); String svnPassword = project.getPassword(); gProFolderList.add(t3docRootName);// 全局工程文件夹名称 String checkOutPath = ConstString.DOWNLOAD_SRC_PATH + t3docRootName; if (checkOutPath == null || t3docRootName == null || svnUrl == null || svnUserName == null || svnPassword == null) { continue; } mkdirs(checkOutPath); try { DAVRepositoryFactory.setup(); // 对于通过使用 http:// 和 https:// 访问 SVNURL repositoryURL = SVNURL.parseURIEncoded(svnUrl); SVNClientManager svnClientManager = SVNClientManager .newInstance((DefaultSVNOptions) options, svnUserName, svnPassword); SVNUpdateClient updateClient = svnClientManager .getUpdateClient(); updateClient.setIgnoreExternals(false); updateClient.doExport(repositoryURL, new File(checkOutPath), SVNRevision.HEAD, SVNRevision.HEAD, NATIVE, true, SVNDepth.INFINITY); } catch (SVNException e) { e.printStackTrace(); Log.errorToDataBase("下载更新工程"+checkOutPath+"失败"); } } return true; } /** * 创建文件夹 * * @param path * 需要创建文件夹路径 * @return boolean */ public boolean mkdirs(String path) { if (path == null) { return false; } File file = new File(path); if (!file.exists()) { return new File(path).mkdirs(); } return true; } } |
|||
System.setProperty和System.getProperty | java | ||
public static void main(String[] args) { System.setProperty("a", "nihao");//设置一个属性 String pro= System.getProperty("a"); System.out.println(pro);//获取自己设置的一个属性 System.out.println(System.getProperty("file.separator"));//获取当前系统中文件的分隔符 System.setProperty("homePage","http://" + Utils.getServerIp()+":" + PropertysConstants.TOMCAT_PORT + PropertysConstants.ACCESS_PATH); } <%@ page language="java" contentType="text/html; charset=GBK" isErrorPage="true" pageEncoding="GBK"%> <html> <body> <font size="1">找不到网页 </font> <br> <font size="1">您要查看的网页可能已被删除、名称已被更改,或者暂时不可用。</font> <br> -------------------------------------------------------------------------------- <br> <font size="1">请尝试以下操作:</font> <br> <font size="1">如果您已经在地址栏中输入该网页的地址,请确认其拼写正确。</font> <br> <ul> <li><font size="1">打开<a href= "<%=System.getProperty("homePage")%>" target="_top"><%=System.getProperty("homePage")%></a>主页,然后查找指向您感兴趣信息的链接。</font></li> <li><font size="1">单击后退按钮,尝试其他链接。</font></li> <li><font size="1">单击搜索,寻找 Internet 上的信息。</font></li> </ul> <font size="1">HTTP 404 - 未找到文件</font> <br> <font size="1">Internet Explorer</font> </body> </html> |
|||
捕获404-505 | web | ||
在写程序时,别忘记给程序加上错误捕获处理。 在web.xml中添加以下内容,捕获错误。 <error-page> <error-code>500</error-code> <location>/error.jsp</location> </error-page> <error-page> <error-code>400</error-code> <location>/index.jsp</location> </error-page> <error-page> <error-code>403</error-code> <location>/403.jsp</location> </error-page> <error-page> <error-code>404</error-code> <location>/404.jsp</location> </error-page> <?xml version="1.0" encoding="UTF-8"?> <web-app version="2.5" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"> <!-- 配置错误处理 --> <error-page> <error-code>404</error-code> <location>/404.html</location> </error-page> <error-page> <error-code>505</error-code> <location>/505.html</location> </error-page> <!-- 配置异常处理 --> <error-page> <exception-type>javax.servle.ServletException</exception-type> <location>/error.html</location> </error-page> <error-page> <exception-type>java.lang.NullPointerException</exception-type> <location>/error.html</location> </error-page> </web-app> 500错误: 服务器内部错误,或是程序有问题。 400错误:URL 地址请求错误。 403错误:权限错误。 404错误:客户端请求的网页不存在。 百度上搜索的错误:HTTP: HTTP 1xx-信息提示 这些状态代码表示临时的响应。客户端在收到常规响应之前,应准备接收一个或多个1xx响应。 100-继续。 101-切换协议。 2xx-成功 这类状态代码表明服务器成功地接受了客户端请求。 200-确定。客户端请求已成功。 201-已创建。 202-已接受。 203-非权威性信息。 204-无内容。 205-重置内容。 206-部分内容。 3xx-重定向 客户端浏览器必须采取更多操作来实现请求。例如,浏览器可能不得不请求服务器上的不同的页面,或通过代理服务器重复该请求。 301-对象已永久移走,即永久重定向。 302-对象已临时移动。 304-未修改。 307-临时重定向。 4xx-客户端错误 发生错误,客户端似乎有问题。例如,客户端请求不存在的页面,客户端未提供有效的身份验证信息。400-错误的请求。 401-访问被拒绝。IIS定义了许多不同的401错误,它们指明更为具体的错误原因。这些具体的错误代码在浏览器中显示,但不在IIS日志中显示: 401.1-登录失败。 401.2-服务器配置导致登录失败。 401.3-由于ACL对资源的限制而未获得授权。 401.4-筛选器授权失败。 401.5-ISAPI/CGI应用程序授权失败。 401.7–访问被Web服务器上的URL授权策略拒绝。这个错误代码为IIS6.0所专用。 403-禁止访问:IIS定义了许多不同的403错误,它们指明更为具体的错误原因: 403.1-执行访问被禁止。 403.2-读访问被禁止。 403.3-写访问被禁止。 403.4-要求SSL。 403.5-要求SSL128。 403.6-IP地址被拒绝。 403.7-要求客户端证书。 403.8-站点访问被拒绝。 403.9-用户数过多。 403.10-配置无效。 403.11-密码更改。 403.12-拒绝访问映射表。 403.13-客户端证书被吊销。 403.14-拒绝目录列表。 403.15-超出客户端访问许可。 403.16-客户端证书不受信任或无效。 403.17-客户端证书已过期或尚未生效。 403.18-在当前的应用程序池中不能执行所请求的URL。这个错误代码为IIS6.0所专用。 403.19-不能为这个应用程序池中的客户端执行CGI。这个错误代码为IIS6.0所专用。 403.20-Passport登录失败。这个错误代码为IIS6.0所专用。 404-未找到。 404.0-(无)–没有找到文件或目录。 404.1-无法在所请求的端口上访问Web站点。 404.2-Web服务扩展锁定策略阻止本请求。 404.3-MIME映射策略阻止本请求。 405-用来访问本页面的HTTP谓词不被允许(方法不被允许) 406-客户端浏览器不接受所请求页面的MIME类型。 407-要求进行代理身份验证。 412-前提条件失败。 413–请求实体太大。 414-请求URI太长。 415–不支持的媒体类型。 416–所请求的范围无法满足。 417–执行失败。 423–锁定的错误。 5xx-服务器错误 服务器由于遇到错误而不能完成该请求。 500-内部服务器错误。 500.12-应用程序正忙于在Web服务器上重新启动。 500.13-Web服务器太忙。 500.15-不允许直接请求Global.asa。 500.16–UNC授权凭据不正确。这个错误代码为IIS6.0所专用。 500.18–URL授权存储不能打开。这个错误代码为IIS6.0所专用。 500.100-内部ASP错误。 501-页眉值指定了未实现的配置。 502-Web服务器用作网关或代理服务器时收到了无效响应。 502.1-CGI应用程序超时。 502.2-CGI应用程序出错。application. 503-服务不可用。这个错误代码为IIS6.0所专用。 504-网关超时。 505-HTTP版本不受支持。 |