环境

开发包:appserv-win32-2.5.10

服务器:Apache2.2

数据库:phpMyAdmin

语言:php5,java

平台:windows 10

java驱动:mysql-connector-java-5.1.37

需求

编写一个PHP脚本语言,连接到phpMyAdmin数据库的test库

编写一个java web服务端,连接到phpMyAdmin数据库的test库

代码

php连接方式

mysql.php

<?php
/*****************************
*数据库连接
*****************************/
$conn = @mysql_connect("localhost","root","123");
if (!$conn){
die("连接数据库失败:" . mysql_error());
} mysql_select_db("test", $conn);
//字符转换,读库
mysql_query("set character set utf8");
mysql_query("set names utf8"); ?>

test.php测试

<?php
error_reporting(0); //防止报错
include('mysql.php');
$result=mysql_query("select * from user"); //根据前面的计算出开始的记录和记录数
// 循环取出记录
$six;
while($row=mysql_fetch_row($result))
{
echo $row[0];
echo $row[1];
}
?>

运行截图 :

java 连接方式

1.新建一个java project为mysqlTest

2.加载JDBC驱动,mysql-connector-java-5.1.37

MySQLConnection.java

package com.mysqltest;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException; /*
* **Mysql连接**
*
* 参数:
* conn 连接
* url mysql数据库连接地址
* user 数据库登陆账号
* password 数据库登陆密码
* 方法:
* conn 获取连接
*/
public class MySQLConnection { public static Connection conn = null;
public static String driver = "com.mysql.jdbc.Driver";
public static String url = "jdbc:mysql://127.0.0.1:3306/post";
public static String user = "root";
public static String password = "123"; /*
* 创建Mysql数据连接 第一步:加载驱动 Class.forName(Driver) 第二步:创建连接
* DriverManager.getConnection(url, user, password);
*/
public Connection conn() {
try {
Class.forName(driver);
} catch (ClassNotFoundException e) {
System.out.println("驱动加载错误");
e.printStackTrace();
}
try {
conn = DriverManager.getConnection(url, user, password);
} catch (SQLException e) {
System.out.println("数据库链接错误");
e.printStackTrace();
}
return conn;
}
}

Work.java

package com.mysqltest;

import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException; /*
* mysql增删改查
*/
public class Work { /*
* insert 增加
*/
public static int insert() {
MySQLConnection connection = new MySQLConnection();
Connection conns; // 获取连接
PreparedStatement pst; // 执行Sql语句
int i = 0;
String sql = "insert into user (username,password) values(?,?)";
try {
conns = connection.conn();
pst = conns.prepareStatement(sql);
pst.setString(1, "lizi");
pst.setString(2, "123");
i = pst.executeUpdate();
pst.close();
conns.close();
} catch (SQLException e) {
System.out.println("数据写入失败");
e.printStackTrace();
}
return i;
} /*
* select 写入
*/
public static void select() {
MySQLConnection connection = new MySQLConnection();
Connection conns; // 获取连接
PreparedStatement pst; // 执行Sql语句(Statement)
ResultSet rs; // 获取返回结果
String sql = "select * from user";
try {
conns = connection.conn();
pst = conns.prepareStatement(sql);
rs = pst.executeQuery(sql);// 执行sql语句
System.out.println("---------------------------------------");
System.out.println("名字 | 密码");
while (rs.next()) {
System.out.println(rs.getString("username") + " | " + rs.getString("password"));
}
System.out.println("---------------------------------------");
conns.close();
pst.close();
rs.close();
} catch (SQLException e) {
System.out.println("数据查询失败");
e.printStackTrace();
}
} /*
* update 修改
*/
public static int update() {
MySQLConnection connection = new MySQLConnection();
Connection conns; // 获取连接
PreparedStatement pst; // 执行Sql语句(Statement)
int i = 0;
String sql = "update user set password = ? where username = ?";
try {
conns = connection.conn();
pst = conns.prepareStatement(sql);
pst.setString(1, "123");
pst.setString(2, "lizi");
i = pst.executeUpdate();
pst.close();
conns.close();
} catch (SQLException e) {
System.out.println("数据修改失败");
e.printStackTrace();
}
return i; } /*
* delete 删除
*/
public static int delete() {
MySQLConnection connection = new MySQLConnection();
Connection conns; // 获取连接
PreparedStatement pst; // 执行Sql语句(Statement)
int i = 0;
String sql = "delete from user where username = ?";
try {
conns = connection.conn();
pst = conns.prepareStatement(sql);
pst.setString(1, "lizi");
i = pst.executeUpdate();
pst.close();
conns.close();
} catch (SQLException e) {
System.out.println("数据删除失败");
e.printStackTrace();
}
return i;
} /*
* test
*/
public static void main(String[] args) {
// System.out.println(insert());
select();
// System.out.println(update());
// System.out.println(delete());
}
}

test截图

PHP学习笔记——PHP脚本和JAVA连接mysql数据库的更多相关文章

  1. MySQL学习(一)——Java连接MySql数据库

    MySQL学习(一)——Java连接MySql数据库 API详解: 获得语句执行 String sql = "Insert into category(cid, cname) values( ...

  2. Java 连接 MySQL 数据库

    最近想学习一下 Java 连接 MySQL 数据库,于是有了这样的一些问题&解决办法. 首先是解决 JDBC(Java Data Base Connectivity)驱动问题,因为默认安装的J ...

  3. java连接mysql数据库详细步骤解析

    java连接mysql数据库详细步骤解析      第一步:下载一个JDBC驱动包,例如我用的是:mysql-connector-java-5.1.17-bin.jar      第二步:导入下载的J ...

  4. Java连接MySQL数据库及简单操作代码

    1.Java连接MySQL数据库 Java连接MySql需要下载JDBC驱动MySQL-connector-java-5.0.5.zip(举例,现有新版本).然后将其解压缩到任一目录.我是解压到D盘, ...

  5. 转载:Java连接MySQL 数据库的正确操作流程

    转载网址:http://www.bitscn.com/pdb/mysql/201005/186551.html       以下的文章主要介绍的是Java连接MySQL 数据库(以MySQL数据库为例 ...

  6. Java连接MySQL数据库增删改查通用方法

    版权声明:本文为博主原创文章,未经博主允许不得转载. Java连接MySQL数据库增删改查通用方法 运行环境:eclipse+MySQL 以前我们Java连接MySQL数据库都是一个数据库写一个类,类 ...

  7. Java进阶(二十五)Java连接mysql数据库(底层实现)

    Java进阶(二十五)Java连接mysql数据库(底层实现) 前言 很长时间没有系统的使用java做项目了.现在需要使用java完成一个实验,其中涉及到java连接数据库.让自己来写,记忆中已无从搜 ...

  8. java连接MySql数据库 zeroDateTimeBehavior

    JAVA连接MySQL数据库,在操作值为0的timestamp类型时不能正确的处理,而是默认抛出一个异常, 就是所见的:java.sql.SQLException: Cannot convert va ...

  9. JDBC Java 连接 MySQL 数据库

    MySQL 版本:Server version: 5.7.17-log MySQL Community Server (GPL) 用于测试的 MySQL 数据库:game 查看数据库中的表 mysql ...

随机推荐

  1. 用intent打开各种类型文件

    public class MyIntent { //android获取一个用于打开HTML文件的intent public static Intent getHtmlFileIntent( Strin ...

  2. EntityFramework 连接数据库出错

    本文转载:http://www.cnblogs.com/shuang121/archive/2012/03/19/2406121.html 总结:选择“是”时,连接字符串的密码会暴露出来,“否”的时候 ...

  3. 【32】确定你的public继承塑模出Is-A关系

    1.public继承表示Is-A关系,也就是满足里氏代换.与之相对应的,private继承表示根据某物实现出,不满足里氏代换.子类对象初始化父类引用,编译通不过. 2.考虑下面的需求,企鹅继承鸟,Bi ...

  4. Custom-Progress-Dialog-Android

    https://github.com/ManolescuSebastian/Custom-Progress-Dialog-Android

  5. [Practical Git] Clean up commits with git rebase

    Sometimes its nice to clean up commits before merging them into your main code repo; in this lesson, ...

  6. android131 360 05 手势触摸滑动,sim卡,开机启动的广播,手机联系人,SharedPreferences,拦截短信

    安卓手势触摸滑动: package com.itheima52.mobilesafe.activity; import android.app.Activity; import android.con ...

  7. excel vba 打印设置(转)

    FROM: http://hi.baidu.com/kdlipm/blog/item/0897dd16ffc03e59f3de32ab.html PageSetup 函式就會記錄時, 設定的記錄三個部 ...

  8. Tomcat 配置 Probe 监控

    转至:http://9771104.blog.163.com/blog/static/19446622009811112836524/ 手上接触Tomcat的项目越来越多,虽说tomcat的manag ...

  9. 10个android开源项目

    http://www.51testing.com/?uid-116228-action-viewspace-itemid-244285 1.Android团队提供的示例项目 如果不是从学习Androi ...

  10. 类 ArrayBlockingQueue<E>(一个由数组支持的有界阻塞队列。)

    类型参数: E - 在此 collection 中保持的元素类型 所有已实现的接口: Serializable, Iterable<E>, Collection<E>, Blo ...