JAVA web
文章平均质量分 58
樊豆豆123
CS硕士入职国企IT 4年,活在当下
展开
-
创建配置文件&&获取配置参数
在src下新建.properties文件,添加参数及值。获取配置文件内容:Properties prop=new Properties(); prop.load(this.getClass().getClassLoader(). getSystemResourceAsStream("xxx.properties")); Strin原创 2016-03-29 10:02:37 · 330 阅读 · 0 评论 -
注册输入校验
输入校验: >保存错误信息 >把domain对象保存到request域(回显) >转发到对应的jsp页面/* * 输入校验 * 1.创建一个Map封装错误信息,Key为表单字段名称,value为错误信息 */ Map errors=new HashMap(); /* * 2.获取user中的username,password,email进行原创 2016-03-29 09:32:38 · 607 阅读 · 0 评论 -
对数据库完成增、删、改、查询
当不知道数据库各列类型时,对数据库实现增、删、改、查询。通过给出sql语句、若干参数完成操作。package dbutils;import java.sql.ResultSet;import java.sql.SQLException;import jdbc.JDBCUtils;import org.junit.Test;public class Demo2 { @Test原创 2016-02-04 15:26:17 · 472 阅读 · 0 评论 -
用户管理系统——分页信息
思路图:cstm.domain中添加类PageBeanpublic class PageBean{ private int pc;// 当前页码page code// private int tp;// 总页数total page private int tr;// 总记录数total record private int ps;// 每页记录数page size p原创 2016-03-03 15:42:48 · 632 阅读 · 0 评论 -
用户管理系统——结构分析
1.功能分析 >添加用户 >查询所有用户 >编辑用户 >>将用户显示到表单 >>修改用户 >删除用户 >多条件查询2.创建表3.创建包:公司名.项目名.分层(此处省略包名) >cstm.domain :Customer,与 表单和t_customer表对应 >cstm.dao :CustormerDao >cstm. servi原创 2016-02-15 12:31:30 · 587 阅读 · 0 评论 -
mysql之控制行操作(一)
登录mysql:mysql -u用户名 -p密码显示数据库:show databases;切换数据库:use 数据库名;查看数据库中的所有记录:select * from 表名;创建数据库:create database 数据库名;删除数据库:drop database 数据库名;数据类型:int:整型double:浮点型,例如double(原创 2015-12-29 20:41:08 · 808 阅读 · 0 评论 -
用户管理系统——多条件搜索
cstm.daopublic List query(Customer criteria) { /* * 搜索条件中包括cname,gender,cellphone,email */ // TODO Auto-generated method stub try { //1.给出sql语句前半句 StringBuilder sql=new StringBuil原创 2016-03-02 11:11:07 · 1251 阅读 · 0 评论 -
事务
事务中包含多个操作,要么都执行成功,要么都执行失败。比如A给B转账,A减少了一定的钱数,B同事增加一定的钱数,或者A的钱没有减少,B的钱也没有增加。事务的四大特性:>原子性(Atomicity):事务中所有操作是不可再分割的原子单位。事务中所有操作要么全部执行成功,要么全部执行失败。>一致性(Consistency):事务执行后,数据库状态与其它业务规则保持一致。如转账业务,无论事原创 2016-02-14 11:20:43 · 415 阅读 · 0 评论 -
在一个Servlet中处理多个请求方法
1. 在一个Servlet中可以有多个请求处理方法!2. 客户端发送请求时,必须多给出一个参数,用来说明要调用的方法 请求处理方法的签名必须与service相同,即返回值和参数,以及声明的异常都相同!3. 客户端必须传递一个参数!package servlet;import java.io.IOException;import java.io.PrintWriter;原创 2016-02-13 11:02:53 · 4321 阅读 · 0 评论 -
用户管理系统——编辑用户
cstm.daopublic Customer findByCid(String cid){ try { String sql="select * from t_customer where cid=?"; return qr.query(sql, new BeanHandler (Customer.class),cid); } catch (SQLException e)原创 2016-03-01 21:09:38 · 749 阅读 · 0 评论 -
用户管理系统——查询所有用户
cstm.dao/** * 查询所有用户 */ public List findAll(){ try { String sql="select * from t_customer"; return qr.query(sql, new BeanListHandler(Customer.class)); } catch (SQLException e) {原创 2016-03-01 20:02:23 · 1471 阅读 · 0 评论 -
c3p0连接池
//1.创建连接池对象 ComboPooledDataSource dataSource=new ComboPooledDataSource(); //2.对池进行四大参数设置 dataSource.setDriverClass("com.mysql.jdbc.Driver"); dataSource.setJdbcUrl("jdbc:mysql://localhost:33原创 2016-01-29 10:19:36 · 576 阅读 · 0 评论 -
装饰者模式
装饰者模式:在具备其他对象功能的基础上有增加新的功能。当不知道被增强对象的具体类型时,可以使用。classMyConnection { Private Connection con; Public MyConnection(Connection con){ This.con =con;} public Stateme原创 2016-01-29 09:38:38 · 285 阅读 · 0 评论 -
dbcp连接池
//1.创建连接池对象 BasicDataSource datasource =new BasicDataSource(); //2.配置四大参数 datasource.setDriverClassName("com.mysql.jdbc.Driver"); datasource.setUrl("jdbc:mysql://localhost:3306/mydb"); datas原创 2016-01-28 12:27:02 · 341 阅读 · 0 评论 -
java误区: java.lang.ClassNotFoundException: com.mysql.jdbc.Driver
我都折腾了大半天,终于找到问题的根源了:折腾了一上午,找到了这错误的原因。哎……悲剧! 确认包已经被导入web工程目录。 原来是tomcat找不到MYSQL JAR包的问题。后来又把mysql-connector-java-5.1.7-bin.jar导入到tomcat的lib目录下面就ok了,嘿…… 在java项目中,只需要引入m转载 2016-01-08 20:24:45 · 4345 阅读 · 2 评论 -
将数据库中的用户名和密码显示到JSP页面
JavaWeb三层架构:结构:1.建立实体User2.DAO,把查询到的数据结果封装到User中3.service,依赖于DAO,将结果发送给Servlet4.Servlet,依赖service,将结果转发给JSP5.JSP页面,请求页面和响应页面。package domain;public class User { private Str原创 2016-01-08 12:51:20 · 4623 阅读 · 0 评论 -
一个直接获取JDBC到数据库连接的工具包(二)
优化后的代码:import java.io.IOException;import java.io.InputStream;import java.sql.Connection;import java.sql.DriverManager;import java.sql.SQLException;import java.util.Properties;import javax.man原创 2016-01-07 21:36:26 · 422 阅读 · 0 评论 -
Javaweb中的监听器
Javaweb中的监听器事件源:三大域>ServletContext>HttpSession>ServletRequest每个事件源分别对应两个监听器:ServletContext>>生命周期监听,有两个方法,一个在出生时调用,另一个在死亡时调用,在服务器启动时出生,服务器关闭时死亡>>>public void contextInitialized(Servle原创 2016-03-05 11:14:44 · 348 阅读 · 0 评论 -
Get和Post设置编码方式
Getprivate Customer encoding(Customer criteria) throws UnsupportedEncodingException { String cname = criteria.getCname(); String gender = criteria.getGender(); String cellphone = criteria.getCel原创 2016-03-07 11:01:45 · 2860 阅读 · 0 评论 -
过滤器
JavaWeb三大组件:Servlet、Listener(2个感知监听器不需要配置)、Filter,都需要在web.xml中进行配置过滤器的作用是拦截请求,它会在一组资源(jsp、servlet、.css、.html等等)的前面执行!过滤器如何编写1. 写一个类实现Filter接口2. 在web.xml中进行配置package filter;import java.io原创 2016-03-07 09:19:31 · 267 阅读 · 0 评论 -
Ajax——json
json是js提供的一种数据交换格式!json的语法 * {}:是对象! > 属性名必须使用双引号括起来!单引不行!!! > 属性值: * null * 数值 * 字符串 * 数组:使用[]括起来 * boolean值:true和false应用jsonvar person = {"n原创 2016-03-15 15:50:51 · 301 阅读 · 0 评论 -
Ajax——json
json是js提供的一种数据交换格式!json的语法 * {}:是对象! > 属性名必须使用双引号括起来!单引不行!!! > 属性值: * null * 数值 * 字符串 * 数组:使用[]括起来 * boolean值:true和false应用jsonvar person = {"n原创 2016-03-15 10:26:51 · 267 阅读 · 0 评论 -
用户管理系统——添加用户
cstm.daopublic class CustomerDao { private QueryRunner qr = new TxQueryRunner(); /** * 添加客户 * * @param c */ public void add(Customer c) { try { String sql = "insert into t_custom原创 2016-03-01 10:59:24 · 1233 阅读 · 0 评论 -
Ajax——XStream
XStream1. 什么作用 * 可以把JavaBean转换为(序列化为)xml2. XStream的jar包 * 核心JAR包:xstream-1.4.7.jar; * 必须依赖包:xpp3_min-1.1.4c(XML Pull Parser,一款速度很快的XML解析器);3. 使用步骤 * XStream xstream = new原创 2016-03-14 09:51:31 · 317 阅读 · 0 评论 -
Ajax——省市联动
1. 页面 ===请选择省份=== ===请选择城市=== 2. ProvinceServlet * ProvinceServlet:当页面加载完毕后马上请求这个Servlet! > 它需要加载china.xml文件,把所有的省的名称使用字符串发送给客户端!3. 页面的工作 * 获取这个字符串,使用原创 2016-03-13 19:05:30 · 406 阅读 · 0 评论 -
Ajax——响应内容为xml
响应内容为xml数据 * 服务器端: > 设置响应头:ContentType,其值为:text/xml;charset=utf-8 * 客户端: > var doc = xmlHttp.responseXML;//得到的是Document对象!<%String path = request.getContextPath();String basePath原创 2016-03-13 14:56:42 · 342 阅读 · 0 评论 -
Dao批处理数据库
package domain;public class OrderIterm { private String iid; private int count;/*数量*/ private double subtotal;/*小计*/ private Order order; /*所属订单 (关联)*/ private Book book;/*订单项所指的商品 (关联)*/ pu原创 2016-04-06 11:20:27 · 516 阅读 · 0 评论 -
Ajax
ajax:asynchronous javascript and xml 异步的js和xml特点:*异步访问服务器 *局部刷新,不需要服务器响应整个页面,只是数据,数据类型有:text、xml、json异步交互和同步交互 * 同步: > 发一个请求,就要等待服务器的响应结束,然后才能发第二个请求! > 刷新的是整个页面! * 异步:原创 2016-03-12 11:00:09 · 303 阅读 · 0 评论 -
javamail发送邮件
发邮件协议:SMTP 简单邮件传输协议 端口号 25 服务器名称为smtp.xxx.com收邮件协议:POP3 邮局协议 端口号 110 服务器名称为pop3.xxx.comeg.163:smtp.163.com和pop3.163.com;126:smtp.126.com和pop3.126.com;qq:smtp.qq.com和pop3.qq.com;sohu:smtp原创 2016-03-11 16:33:41 · 542 阅读 · 0 评论 -
下载
下载的要求 * 两个头一个流! > Content-Type:传递给客户端的文件是什么MIME类型,例如:image/pjpeg * 通过文件名称调用ServletContext的getMimeType()方法,得到MIME类型! > Content-Disposition:它的默认值为inline,表示在浏览器窗口中打开!attachment;filena原创 2016-03-11 09:46:48 · 306 阅读 · 0 评论 -
设置上传文件的大小
* 单个文件大小限制 > sfu.setFileSizeMax(100*1024):限制单个文件大小为100KB > 上面的方法调用,必须在解析开始之前调用! > 如果上传的文件超出限制,在parseRequest()方法执行时,会抛出异常!FileUploadBase.FileSizeLimitExceededException * 整个请求所有数据大小限制原创 2016-03-11 08:48:34 · 3040 阅读 · 0 评论 -
上传文件之目录处理
1. 文件必须保存到WEB-INF下! * 目的是不让浏览器直接访问到! * 把文件保存到WEB-INF目录下!2. 文件名称相关问题 * 有的浏览器上传的文件名是绝对路径,这需要切割!C:\files\baibing.jpg String filename = fi2.getName();int index = filename.lastIndexOf(原创 2016-03-10 11:18:13 · 424 阅读 · 0 评论 -
上传
上传(上传不能使用BaseServlet)1. 上传对表单限制 * method="post" * enctype="multipart/form-data" * 表单中需要添加文件表单项: 用户名; 照 片: 2. 上传对Servlet限制 * request.getParametere("xxx");这个方法在表单为enct原创 2016-03-10 10:24:56 · 267 阅读 · 0 评论 -
过滤器——解决全站编码
乱码问题:>获取请求参数中的乱码问题; >> POST请求:request.setCharacterEncoding(“utf-8”); >>GET请求:newString(request.getParameter(“xxx”).getBytes(“iso-8859-1”), “utf-8”);> 响应的乱码问题:response.setContextType(“tex原创 2016-03-08 16:57:54 · 884 阅读 · 0 评论 -
过滤器——拦截用户访问权限
访问index.jsp页面,会员具备访问会员和游客页面的权限,管理员权限最高,均可访问。index.jsp 登录 ${msg } " method="post"> 用户名: login.jsp 登录 ${msg } " method="post"> 用户名:原创 2016-03-08 10:55:47 · 521 阅读 · 0 评论 -
过滤器的应用——统计IP访问次数
public class AListener implements ServletContextListener { /** * 在服务器启动时创建Map,保存到ServletContext */ public void contextInitialized(ServletContextEvent sce) { // 创建Map Map map = new L原创 2016-03-08 10:46:25 · 1286 阅读 · 0 评论 -
写一个直接获取JDBC到数据库连接的工具包(一)
其实就是新建一个类,类中实现一定的功能首先需要建立一个配置文件,即键值对,注意:配置文件要放在src下,建立一个jdbconfig.properties文件,并添加键值对JdbcUtils工具包:import java.io.IOException;import java.io.InputStream;import java.sql.Connection;import j原创 2016-01-07 21:26:01 · 1666 阅读 · 0 评论 -
验证用户登录时用户名和密码是否正确及如何防止sql注入
public static boolean fun3(String username,String password) throws ClassNotFoundException, SQLException{ String driverClassName="com.mysql.jdbc.Driver"; String url="jdbc:mysql://localhost:3306/mydb"原创 2016-01-07 17:08:57 · 12801 阅读 · 0 评论 -
DOM(文档对象模型)解析原理
原创 2015-11-12 17:02:43 · 447 阅读 · 0 评论 -
html和css结合的方式
css将网页内容和显示样式进行了分离,提高了显示功能,扩展功能。1.每个html标签都有一个style样式属性,属性的值就是css代码。原创 2015-11-02 20:39:55 · 465 阅读 · 0 评论