3429人加入学习
(12人评价)
JDBC编程和MySQL数据库

制作完成于2018年5月11日 使用JDK8

价格 免费

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
 <head>
  <title> 内部类 </title>
  <meta name="Generator" content="EditPlus">
  <meta name="Author" content="">
  <meta name="Keywords" content="">
  <meta name="Description" content="">
  <meta charset="UTF-8">
  <style type="text/css">
		body{background-color:#6600ff;}
		p{text-indent:2em;}
  </style>
 </head>

 <body>
	<h3>一、内部类基础</h3>
		<p>在Java中,可以将一个类定义在另一个类里面或者一个方法里面,这样的类称为内部类。广泛意义上的内部类一般来说包括这四种:成员内部类、<br/>局部内部类、匿名内部类和静态内部类。下面就先来了解一下这四种内部类的用法。</p>
	<h4>1.成员内部类</h4>
		成员内部类是最普通的内部类,它的定义为位于另一个类的内部,形如下面的形式:<br/>
		<p>class Circle {</p>
			<p>double radius = 0;</p>
     			 <p>public Circle(double radius) {</p>
				<p>this.radius = radius;</p>
			 <p>}<br/>
     		 <p>class Draw {     //内部类</p>
			<p>public void drawSahpe() {</p>
			 <p>System.out.println("drawshape");</p>
			<p>}</p>
		 <p>}</p>
	  }</p>
	  <p>成员内部类可以无条件访问外部类的所有成员属性和成员方法(包括private成员和静态成员)。</p>
	  <p>不过要注意的是,当成员内部类拥有和外部类同名的成员变量或者方法时,会发生隐藏现象,即默认情况下访问的是成员内部类的成员。如果要访问<br/>外部类的同名成员,需要以下面的形式进行访问:</p>
		<p>外部类.this.成员变量</p>
		<p>外部类.this.成员方法</p>
	  <span>虽然成员内部类可以无条件地访问外部类的成员,而外部类想访问成员内部类的成员却不是这么随心所欲了。在外部类中如果要访问成员内部类的<br/>成员,必须先创建一个成员内部类的对象,再通过指向这个对象的引用来访问:</span>
			<p>class Circle {</p>
					<p>private double radius = 0;</p>
				 
					<p>public Circle(double radius) {</p>
						<p>this.radius = radius;</p>
						<p>getDrawInstance().drawSahpe();   //必须先创建成员内部类的对象,再进行访问</p>
					<p>}</p>
					 
					<p>private Draw getDrawInstance() {</p>
						<p>return new Draw();</p>
					<p>}</p>
					 
					<p>class Draw {     //内部类</p>
						<p>public void drawSahpe() {</p>
							<p>System.out.println(radius);  //外部类的private成员</p>
						<p>}</p>
					<p>}</p>
				<p>}</p>
		<span>成员内部类是依附外部类而存在的,也就是说,如果要创建成员内部类的对象,前提是必须存在一个外部类的对象。创建成员内部类对象的一般		<br/>方式如下:</span>
			<p>public class Test {</p>
					<p>public static void main(String[] args)  {</p>
						<p>//第一种方式:</p>
						<p>Outter outter = new Outter();</p>
						<p>Outter.Inner inner = outter.new Inner();  //必须通过Outter对象来创建</p>
						<p>//第二种方式:</p>
						<p>Outter.Inner inner1 = outter.getInnerInstance();</p>
					<p>}</p>
				<p>}</p>
			 
			<p>class Outter {</p>
				<p>private Inner inner = null;</p>
				<p>public Outter() {</p>
					 
				<p>}</p>
				 
				<p>public Inner getInnerInstance() {</p>
					<p>if(inner == null)</p>
						<p>inner = new Inner();</p>
					<p>return inner;</p>
				<p>}</p>
				  
				<p>class Inner {</p>
					<p>public Inner() {</p>
						 
					<p>}</p>
				<p>}</p>
			<p>}</p>
		<span>内部类可以拥有private访问权限、protected访问权限、public访问权限及包访问权限。比如上面的例子,如果成员内部类Inner用private修饰,则<br/>只能在外部类的内部访问,如果用public修饰,则任何地方都能访问;如果用protected修饰,则只能在同一个包下或者继承外部类的情况下访问;如<br/>果是默认访问权限,则只能在同一个包下访问。这一点和外部类有一点不一样,外部类只能被public和包访问两种权限修饰。我个人是这么理解的,<br/>由于成员内部类看起来像是外部类的一个成员,所以可以像类的成员一样拥有多种权限修饰。</span>
 </body>
</html>

 

[展开全文]

创建数据库:

  create database 数据库名称

展示所有的创建的数据库:

  show databases

使用某个数据库:

use 数据库名称

查看当前所使用的数据库:

 select database()

############

创建表:

  create table 表名();

展示表:

show tables

 删除表:

 drop table 表名

  

 

 

 

 

 

[展开全文]

增加表中的元组:

insert into 表名 values ()

删除表中的内容:

delete from 表名

修改表中的内容:

update 表名 set 属性 = 某 where 限制条件

查表:

select * from 表名

##########

修改表名:

rename table 原来的表名 to 

[展开全文]

分页查询:

limit 所要查询的起始行数 ,每页的行数

起始行数=(页数-1)*每页的行数

若要查询第n页,每页为m行:limit (n-1)*m , m

  ################

PreparedStatement 类  :作为查询
PreparedStatement  pstmt = null; 

 

pstmt.setXXX(1, XXXX);
 pstmt.setXXX(2, XXXX);

############ 

Connection con = null;Connection con = null;

rs = stmt.executeQuery();   // 发起请求

 

 

 

 

 

 

 

 

 

[展开全文]

PreparedStatement对象可以防止sql注入,而Statement不能防止sql注入

 crud: create(插入),read(读取),update(更新),delete(删除)

stmt.executeUpdate(); 应用于:create(插入),update(修改),delete(删除)

stmt.executeQuery();应用于read(读取)

[展开全文]

jdbc编程

java database connrctivity

使用java里提供的一些类和方法,利用程序链接数据库,进行增删改查

重命名

rename table tablename to new_tablename;

[展开全文]

事务保证工作要么同时成功要么同时失败

 

[展开全文]

DriverManager驱动管理器

getConnection方法连接数据库

[展开全文]

连接池就是数据源 dbcp数据源 c3p0数据源;、

MinIdle 保持有最少个空闲连接

[展开全文]

Class.forname(“com.mysql.jdbc.driver”);注册驱动。

connection con=driverManager.getConnection(url),连接数据库

prparstatement s=con.prparstatementstatement(sql);

Resultser re= 返回结果集。

if(re.next){}

[展开全文]

数据库修改表名语句:

rename table (原表名)to (新表名);

往表里面插入数据:

insert into user (username,password) values('LiSi', '321');

[展开全文]

当自己写一个方法的时候,如果有异常,需要抛出去,交给其他的方法处理,不能自己抛出来的异常自己处理

 

在main方法里的异常,抛出来之后,系统可以帮我们处理

[展开全文]
   public static void main(String[] args) {
		try {
			Class.forName("com.mysql.jdbc.Driver");
			String url="jdbc:mysql://localhost:3306/webdb_9?useUnicode=true&charterEncoding=UTF-8";
			String user="root";
			String password="root";
			Connection C=DriverManager.getConnection(url, user, password);
		} catch (Exception e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
	}

 

[展开全文]

connection.setAutoCommit(false);   //手动开启事务

 

connection.commit();   //提交事务

[展开全文]

授课教师

SiKi学院老师

课程特色

视频(27)
下载资料(1)