JDBC
《java连接数据库》
Class.forName("com.mysql.jdbc.Driver")--1:加载驱动
Connection conn=DriverManager.getConnection(url, user, password)--2:通过指定的URL来获取数据库的连接
jdbc:mysql://localhost:3306/test11
PreparedStatement statement=conn.prepareStatement(sql)--3.通过一个sql预处理对象来管理sql语句
ResultSet rs=statement.executeQuery();--//4.通过ResultSet来保存sql执行后的结果
?useUnicode=true&characterEncoding=utf8--添加数据时,解决中文乱码
?characterEncoding=utf8--添加数据时,解决中文乱码
// 添加"characterEncoding=utf8"用来解决上传到数据库的乱码问题
statement.executeUpdate()--增删改数据时使用
ResultSet rs=statement.executeQuery()--查询数据时使用
《java连接网页》
req.getLocalAddr()--本机地址
req.getProtocol()--传输协议
req.getHeader()---获取请求头
req.getParameter--获取文本
跳转到jsp
req.getRequestDispatcher("resp.jsp").forward(req, resp)
重定向
resp.sendRedirect("resp.jsp");
req.setCharacterEncoding("utf-8")--设置请求编码
response.sendRedirect(req.getServletContext().getContextPath()+"/longing.jsp")--强制重定向,绝对路径
HttpSession session = req.getSession()--创建HttpSession
session.invalidate()--手动销毁session
session.setMaxInactiveInterval(10)--设定时间来自动销毁session,单位是秒
《JSP》
getServletContext().getRealPath("/")--获取项目发布的根目录
<%@ include file="toubu.jsp" %>--引入页面
<jsp:include page="inlayingJsp.jsp" flush="true"/>--引入页面
<c:import url="inlayingJsp.jsp"></c:import> --引入页面
<%! %>--声明
<% %>--脚本
<script>
var temp = "<%=test() %>"
alert(temp)
</script>---javascript脚本
<% System.out.print(application.getRealPath("/")); %>--JSP获取项目发的跟目录
《获取所有的请求头》
《方法1》
Enumeration en = request.getHeaderNames();--获取所有请求头的名字
//遍历所有的请求头
for(;en.hasMoreElements();){
//获取所以请求头的名字
Object o = en.nextElement();
//根据请求头输出相应信息
out.print(o.toString()+":"+request.getHeader(o.toString())+"<p>");
}
《方法2》
while(en.hasMoreElements()){
Object o = en.nextElement();
//根据请求头输出相应信息
out.print(o.toString()+":"+request.getHeader(o.toString())+"<p>");
}
Collection<String> enumeration = response.getHeaderNames();--获取响应头
《4个范围对象》
pageContext.setAttribute("name", "aaaaa");--生效范围是本页面内
request.setAttribute("name", "bbbbb");--生效范围是一次请求内
session.setAttribute("name", "ccccc");--生效范围是一次会话
application.setAttribute("name", "ddddd");--生效范围是整个web服务期间
request.getRequestDispatcher("new.jsp").forward(request, response);--页面跳转
out.print("page:"+page.getClass());--即指其本身
《抛出异常》
errorPage="errer.jsp"--抛出异常
<!-- 要抛出异常的话,需要设置errorPage属性,异常将会抛到指定的页面上 -->
isErrorPage="true"
<!-- 要在page指令下设置isErrorPage属性,将值设置为true,才能使用exception对象-->
《EL》
${empty name } --判断name 是否为真
isELIgnored="true" ------禁用EL表达式
".","[]"----获取值
${requestScope.name }------指定获取的EL表达式的对象范围
${param.n }--直接获取n的值
${header.host }---获取请求头host的值
${cookie.JSESSIONID.value }--获取cookie的值
《JSTL》
《表达式标签》
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>---核心标签库
var--变量名
value-- 对应的值
scope --生效范围
escapeXml --解释标签,--true---不解释 ---false--解释
<c:set var="txt" value="<b>这个是用JSTL来应用的</b>" scope="session"/>
<c:remove var="txt"/>----删除标签
<c:out value="${txt }" escapeXml="false"></c:out>
<c:catch var="error"><% int i = 1/0; %> </c:catch>---捕捉异常
《流程控制标签》
<c:if test="${1==1}"> 证明1=1 </c:if> --JSTL判断
<c:choose> <c:when test="${test ==1 }">值,为1</c:when>
<c:when test="${test ==2 }">值,为2</c:when>
<c:when test="${test ==3 }">值,为3</c:when>
<c:otherwise>其他值</c:otherwise>
</c:choose>-------------------------------多分枝语句
《循环控制标签》
items--要迭代的对象
var--每次获得的值
begin--开始的位置
end--结束的位置
step--间隔
《遍历集合》
<c:forEach items="${li }" var="n" begin="1" end= "3" step="2"> ${n }------<br> </c:forEach>
《遍历字符串》
delims --分隔符
<c:forTokens items="q,w,e,r,t,y,u,i" delims="," var="tt">
${tt }-----<br>
</c:forTokens>
《URL操作标签》
url--引用的页面
var="data"--将页面保存到data变量里面
<c:import url="index.jsp" var="data"></c:import>
<a href='<c:url value="index.jsp"></c:url>'>连接</a>--URL标签:对连接的地址进行格式化,并在必要时对URL进行重写
<c:redirect url="index.jsp"></c:redirect>-- 重定向 -->
《格式化标签库》
<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt"%>--格式化标签库
NUMBER--数字类型
CURRENCY--货币类型
PERCENT--百分比类型
<fmt:formatNumber type="NUMBER" value="${num }"></fmt:formatNumber>--格式化数字
《函数标签库》--必须要在EL表达式去使用
<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions" %>--函数标签库
fn:contains() --- 函数判断输入的字符串是否包含指定的子串
fn:startsWith() --- 函数判断输入的字符串是否为指定的子串开始
fn:endsWith() --- 函数判断输入的字符串是否与指定的后缀结束
fn:toLowerCase() --- 函数将所有字符转换为小写的字符串
fn:toUpperCase() --- 函数将所有字符转换转换为大写
fn:trim() --- 函数把字符串两端空白空格删除等
fn:replace() --- 函数替换所有出现的字符串与另一个字符串
fn:substring() --- 函数返回一个指定的字符串的开始和结束索引
<script src="${pageContext.request.contextPath }"></script>--获取跟目录
window.location.href="index.jsp";-----脚本,实行跳转
《增删改查》
required="true"--文本框属性,设定必须要输入
req.setCharacterEncoding("utf-8");--添加用户时,解决中文乱码
《ajax--阿贾克斯》
var xmlReq = new XMLHttpRequest();---创建一个人ajax对象
xmlReq.open("post", url, true);--设置ajax请求
String name = new String(req.getParameter("username").getBytes("ISO-8859-1"),"utf-8");--传值时,解决中文乱码
user.setRegisterdate(new Timestamp(System.currentTimeMillis()).toString());--添加当前时间
《下载文件》
SmartUpload su = new SmartUpload();--先获取SmartUpload对象
《ajax--阿贾克斯 小结》
1.什么是Ajax :不刷新页面,但是可以和服务器进行通信的方式,使用Ajax的主要方法是XMLHttpRequest对象
2.使用XMLHttpRequest 对象实现Ajax [了解]
3.Ajax传输数据的 3 种方式
1)XML:笨重解析困难,但,XML是通用的数据交换格式
2)HTML:不需要解析可以直接放到文档中,若仅更新一部分区域,但传输数据不是很方便,且HTML 代码需要拼装
3)JSON:小巧,有面向对象的特征,且有很多第三方的jar包 可以把java对象或集合转换为JSON字符串
4. 使用Jquery 完成Ajax 操作
1)load 方法:可以用于HTML 文档的元素节点,把结果直接加为对应节点的子元素,
通常所言 ,load 方法加载后的数据是一个HTML片段
var $obj = ...
var url = ...
var args = {key:value};
$obj.load(url ,args);
2) $.get,$.post,$getJSON:更为灵活,除去使用load方法的情况,大部分时候都使用这 3 个方法
I.基本使用方法
//url:Ajax 请求的目标的统一资源定位器
//args:传递的参数:JSON类型
//data:Ajax 响应成功后的数据,可能是XML,HTML,JSON
$.get(url,args,function(date)){}
II.请求JSON 数据
$.get(url,args,function(data){},"JSON")
$.post(url,args,function(data){},"JSON")
$.getJSON(url,args,function(data){})
《java连接数据库》Class.forName("com.mysql.jdbc.Driver")--1:加载驱动Connection conn=DriverManager.getConnection(url, user, password)--2:通过指定的URL来获取数据库的连接jdbc:mysql://localhost:3306/test11PreparedStatement statement=conn.prepareStatement(sql)--3.通过一个sql预处理对象来管理sql语句ResultSet rs=statement.executeQuery();--//4.通过ResultSet来保存sql执行后的结果?useUnicode=true&characterEncoding=utf8--添加数据时,解决中文乱码?characterEncoding=utf8--添加数据时,解决中文乱码// 添加"characterEncoding=utf8"用来解决上传到数据库的乱码问题statement.executeUpdate()--增删改数据时使用ResultSet rs=statement.executeQuery()--查询数据时使用
《java连接网页》req.getLocalAddr()--本机地址req.getProtocol()--传输协议req.getHeader()---获取请求头req.getParameter--获取文本
跳转到jspreq.getRequestDispatcher("resp.jsp").forward(req, resp)
重定向resp.sendRedirect("resp.jsp");
req.setCharacterEncoding("utf-8")--设置请求编码response.sendRedirect(req.getServletContext().getContextPath()+"/longing.jsp")--强制重定向,绝对路径
HttpSession session = req.getSession()--创建HttpSessionsession.invalidate()--手动销毁sessionsession.setMaxInactiveInterval(10)--设定时间来自动销毁session,单位是秒
《JSP》getServletContext().getRealPath("/")--获取项目发布的根目录<%@ include file="toubu.jsp" %>--引入页面<jsp:include page="inlayingJsp.jsp" flush="true"/>--引入页面 <c:import url="inlayingJsp.jsp"></c:import> --引入页面<%! %>--声明<% %>--脚本
<script>var temp = "<%=test() %>"alert(temp)</script>---javascript脚本
<% System.out.print(application.getRealPath("/")); %>--JSP获取项目发的跟目录《获取所有的请求头》《方法1》Enumeration en = request.getHeaderNames();--获取所有请求头的名字//遍历所有的请求头for(;en.hasMoreElements();){//获取所以请求头的名字Object o = en.nextElement();//根据请求头输出相应信息out.print(o.toString()+":"+request.getHeader(o.toString())+"<p>");}《方法2》while(en.hasMoreElements()){Object o = en.nextElement();//根据请求头输出相应信息out.print(o.toString()+":"+request.getHeader(o.toString())+"<p>");}Collection<String> enumeration = response.getHeaderNames();--获取响应头《4个范围对象》pageContext.setAttribute("name", "aaaaa");--生效范围是本页面内request.setAttribute("name", "bbbbb");--生效范围是一次请求内session.setAttribute("name", "ccccc");--生效范围是一次会话application.setAttribute("name", "ddddd");--生效范围是整个web服务期间request.getRequestDispatcher("new.jsp").forward(request, response);--页面跳转out.print("page:"+page.getClass());--即指其本身《抛出异常》errorPage="errer.jsp"--抛出异常<!-- 要抛出异常的话,需要设置errorPage属性,异常将会抛到指定的页面上 -->isErrorPage="true"<!-- 要在page指令下设置isErrorPage属性,将值设置为true,才能使用exception对象-->
《EL》${empty name } --判断name 是否为真isELIgnored="true" ------禁用EL表达式".","[]"----获取值${requestScope.name }------指定获取的EL表达式的对象范围${param.n }--直接获取n的值 ${header.host }---获取请求头host的值 ${cookie.JSESSIONID.value }--获取cookie的值 《JSTL》《表达式标签》<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>---核心标签库var--变量名value-- 对应的值scope --生效范围escapeXml --解释标签,--true---不解释 ---false--解释<c:set var="txt" value="<b>这个是用JSTL来应用的</b>" scope="session"/><c:remove var="txt"/>----删除标签<c:out value="${txt }" escapeXml="false"></c:out><c:catch var="error"><% int i = 1/0; %> </c:catch>---捕捉异常
《流程控制标签》<c:if test="${1==1}"> 证明1=1 </c:if> --JSTL判断<c:choose> <c:when test="${test ==1 }">值,为1</c:when><c:when test="${test ==2 }">值,为2</c:when><c:when test="${test ==3 }">值,为3</c:when><c:otherwise>其他值</c:otherwise></c:choose>-------------------------------多分枝语句
《循环控制标签》items--要迭代的对象var--每次获得的值begin--开始的位置end--结束的位置step--间隔《遍历集合》<c:forEach items="${li }" var="n" begin="1" end= "3" step="2"> ${n }------<br> </c:forEach>《遍历字符串》delims --分隔符<c:forTokens items="q,w,e,r,t,y,u,i" delims="," var="tt">${tt }-----<br></c:forTokens>《URL操作标签》url--引用的页面var="data"--将页面保存到data变量里面<c:import url="index.jsp" var="data"></c:import><a href='<c:url value="index.jsp"></c:url>'>连接</a>--URL标签:对连接的地址进行格式化,并在必要时对URL进行重写<c:redirect url="index.jsp"></c:redirect>-- 重定向 -->
《格式化标签库》<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt"%>--格式化标签库NUMBER--数字类型CURRENCY--货币类型PERCENT--百分比类型<fmt:formatNumber type="NUMBER" value="${num }"></fmt:formatNumber>--格式化数字
《函数标签库》--必须要在EL表达式去使用<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions" %>--函数标签库fn:contains() --- 函数判断输入的字符串是否包含指定的子串fn:startsWith() --- 函数判断输入的字符串是否为指定的子串开始fn:endsWith() --- 函数判断输入的字符串是否与指定的后缀结束fn:toLowerCase() --- 函数将所有字符转换为小写的字符串fn:toUpperCase() --- 函数将所有字符转换转换为大写fn:trim() --- 函数把字符串两端空白空格删除等fn:replace() --- 函数替换所有出现的字符串与另一个字符串fn:substring() --- 函数返回一个指定的字符串的开始和结束索引<script src="${pageContext.request.contextPath }"></script>--获取跟目录window.location.href="index.jsp";-----脚本,实行跳转《增删改查》required="true"--文本框属性,设定必须要输入req.setCharacterEncoding("utf-8");--添加用户时,解决中文乱码《ajax--阿贾克斯》var xmlReq = new XMLHttpRequest();---创建一个人ajax对象xmlReq.open("post", url, true);--设置ajax请求String name = new String(req.getParameter("username").getBytes("ISO-8859-1"),"utf-8");--传值时,解决中文乱码user.setRegisterdate(new Timestamp(System.currentTimeMillis()).toString());--添加当前时间《下载文件》SmartUpload su = new SmartUpload();--先获取SmartUpload对象《ajax--阿贾克斯 小结》1.什么是Ajax :不刷新页面,但是可以和服务器进行通信的方式,使用Ajax的主要方法是XMLHttpRequest对象2.使用XMLHttpRequest 对象实现Ajax [了解]3.Ajax传输数据的 3 种方式 1)XML:笨重解析困难,但,XML是通用的数据交换格式2)HTML:不需要解析可以直接放到文档中,若仅更新一部分区域,但传输数据不是很方便,且HTML 代码需要拼装3)JSON:小巧,有面向对象的特征,且有很多第三方的jar包 可以把java对象或集合转换为JSON字符串
4. 使用Jquery 完成Ajax 操作1)load 方法:可以用于HTML 文档的元素节点,把结果直接加为对应节点的子元素,通常所言 ,load 方法加载后的数据是一个HTML片段var $obj = ...var url = ...var args = {key:value};$obj.load(url ,args);
2) $.get,$.post,$getJSON:更为灵活,除去使用load方法的情况,大部分时候都使用这 3 个方法I.基本使用方法//url:Ajax 请求的目标的统一资源定位器//args:传递的参数:JSON类型//data:Ajax 响应成功后的数据,可能是XML,HTML,JSON$.get(url,args,function(date)){}II.请求JSON 数据$.get(url,args,function(data){},"JSON")$.post(url,args,function(data){},"JSON")$.getJSON(url,args,function(data){})
JDBC的更多相关文章
- JDBC<android studio,kotlin>
工具:mysql 5.6.19,mysql-connector-java-5.1.48.jar,android stuido&android studio自带模拟器 1.在mysql数据库中新 ...
- Google Android Studio Kotlin 开发环境配置
Google 近日开发者大会宣布Kotlin成为Android开发的第一级语言,即Android官方开发语言,可见Google对Kotlin的重视,本文就介绍一下Android Studio下的Kot ...
- Google Android Studio Kotlin
Google Android Studio Kotlin 开发环境配置 Google 近日开发者大会宣布Kotlin成为Android开发的第一级语言,即Android官方开发语言,可见Google对 ...
- Android Studio(Kotlin)之RecyclerView
RecyclerView应该是ListView的增强版. RecyclerView与ListView的区别(我认为的): RecyclerView的性能比ListView高 RecyclerView支 ...
- android studio使用JDBC访问mysql数据库(Kotlin方法)
工具:mysql-connector-java-5.1.48.jar,mysql version 5.6.19,android studio内置模拟器 1.connection import java ...
- Android Studio不更新到最新版使用Kotlin
第一步:安装Kotlin插件 打开Settings面板,找到Plugins选项,点击Browse repositories(浏览仓库),输入“Kotlin”查找,然后安装即可.安装完成之后需要重启An ...
- Android Studio中创建Kotlin For Android项目
Kotlin俗称Android中的Swift,它是Jetbrains公司开发的基于JVM的一门语言,JetBrains公司可能大家并不熟悉,不过相信IntelliJ IDE大家一定知道,Android ...
- 浅谈Kotlin(一):简介及Android Studio中配置
浅谈Kotlin(一):简介及Android Studio中配置 浅谈Kotlin(二):基本类型.基本语法.代码风格 浅谈Kotlin(三):类 浅谈Kotlin(四):控制流 前言: 今日新闻:谷 ...
- Android Studio安装Kotlin插件
1 Kotlin语言介绍 Kotlin 是 JetBrains 在 2010 年推出的基于 JVM 的新编程语言,是一种新的静态类型编程语言.开发者称,设计它的目的是避免 Java 语言编程中的一些难 ...
- Android Studio使用JDBC远程连接mysql的注意事项(附示例)
JDBC为java程序访问各种类型的关系型数据库提供了统一的接口,用户不必针对不同数据库写出不同的代码,但是使用JDBC必须得下载相应的驱动,比如我这里是要连接mysql,于是就到mysql官网去下载 ...
随机推荐
- s:if 判断
判断 ArrayList size 是否为0 <s:if test="list.size==0"> <s:if> <s:else> </s ...
- windows XP 神key
微软内部泄露的XP的CD-KEY和无限次激活码!亲测!!! Windows XP专业版最新注册码HTXH6-2JJC4-CDB6C-X38B4-C3GF3RT4H2-8WYHG-QKK6K-WWHJ2 ...
- [BZOJ3224]Tyvj 1728 普通平衡树
[BZOJ3224]Tyvj 1728 普通平衡树 试题描述 您需要写一种数据结构(可参考题目标题),来维护一些数,其中需要提供以下操作:1. 插入x数2. 删除x数(若有多个相同的数,因只删除一个) ...
- 对偶SVM
1.对偶问题的推导 为什么要求解对偶问题?一是对偶问题往往更容易求解,二是可以自然的引入核函数. 1.1 用拉格朗日函数将原问题转化为"无约束"等价问题 原问题是: 写出它的拉格朗 ...
- spring框架学习(三)
一.Spring自动组件扫描 Spring 提供组件扫描(component scanning)功能.它能从指定的classpath里自动扫描.侦测和实例化具有特定注解的组件. 基本的注解是@Comp ...
- MVC 文件上传问题
在用MVC作文件上传处理时,最开始是这样的. html代码 <div id="dialog" title="Upload files"> ...
- 使用KRPano资源分析工具还原全景图片
软件交流群:571171251(软件免费版本在群内提供) krpano技术交流群:551278936(软件免费版本在群内提供) 最新博客地址:blog.turenlong.com 限时下载地址:htt ...
- java享元模式(flyweight)
有个问题: Integer i1 = 12; Integer i2 = 12; System.out.println(i1 == i2);//输出true Integer i1 = 130; Inte ...
- "传成老树白茶"献礼母亲节 邀市民品茗感受茶文化
5月8日下午,传成老树白茶巡回中国公益品鉴会第七十站,走进福州马尾区东方名城传成老树白茶文化馆. 本次品鉴会活动以“感恩母亲节”为主题,以马尾船政文化为背景,邀福州市民一起品鉴白茶,感受中国茶文化. ...
- 安卓手机 虚拟键盘输入用 position:fixed解决 !!!
下面 主要代码 方便看. 样式 <style> *{ margin:0; padding:0; } html{ height:100%;/*关键代码*/ } body{ height:10 ...