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官网去下载 ...
随机推荐
- mysql中distinct的用法
本事例实验用表task,结构如下 MySQL> desc task; +-------------+------------+------+-----+-------------------+- ...
- canvas九宫格跑马灯
canvas九宫格跑马灯抽奖 之前用dom写了一版,部分 安卓机会卡顿,换用canvas dom版本九宫格抽奖
- 高程(3):操作符、for、for...in循环、break/continue/return语句、函数等
1.关系操作符 注意点:1)比较操作数是两个字符串,是比较字符串的字符编码值. 如:"a" > "b" 返回 false:"a" & ...
- Android控制ScrollView滚动
有两种办法,第一种,使用scrollTo(),这个方法不需要handler,直接调用就行 第二种方式,使用fullScrol() 下面我们看一下这个函数: scrollView.fullScroll( ...
- Object类和常用方法
Object类是java语言的根类,要么是一个类的直接父类,要么就是一个类的间接父类.所有对象(包括数组)都实现这个类的方法. 引用数据类型:类/接口/数组,引用数据类型又称之位对象类,所谓的数组变量 ...
- Socket网络编程二
SocketServer socketserver一共有这么几种类型 class socketserver.TCPServer(server_address, RequestHandlerClass, ...
- js调用php和php调用js的方法举例
js调用php和php调用js的方法举例1 JS方式调用PHP文件并取得php中的值 举一个简单的例子来说明: 如在页面a.html中用下面这句调用: <script type="te ...
- CornerStone的使用
俗话说:"工欲善其事必先利其器": 对于我们程序员来说,不管你是大神,还是小鱼小虾,进入公司之后,都用过源码管理工具,不然你就不是一个合格的程序员,现在各个公司用于源码管理工具通常 ...
- php mysqli mysqli_query() mysqli_real_query()
2016年11月26日 15:22:27 星期六 场景: PHP从mysql中读取数据 1. 一次性读取所有数据返给PHP 2. 每次循环只读取一掉记录 数据量小的时候可以使用第一种方法, 数据量很大 ...
- tp5 model 的时间戳
单独在模型里面设置:(推荐) protected $autoWriteTimestamp = true; // int 型 protected $autoWriteTimestamp = 'datet ...