数据库名:db_file_test

表名:obj

实体类:

package com.bean;

import java.io.Serializable;

public class User implements Serializable {

private String name;

private String password;

public User() {

super();

// TODO Auto-generated constructor stub

}

public User(String name, String password) {

super();

this.name = name;

this.password = password;

}

@Override

public String toString() {

return "User [name=" + name + ", password=" + password + "]";

}

public String getName() {

return name;

}

public void setName(String name) {

this.name = name;

}

public String getPassword() {

return password;

}

public void setPassword(String password) {

this.password = password;

}

}

数据库连接的工具类:

package com.utils;

import java.sql.Connection;

import java.sql.DriverManager;

import java.sql.SQLException;

public class DBConnection {

static String url = "jdbc:mysql://localhost:3306/db_file_test?useUnicode=true&characterEncoding=UTF-8";

static String db_user = "root";

static String db_password = "root";

static Connection conn = null;

static {

// 加载驱动

try {

Class.forName("com.mysql.jdbc.Driver");

conn = DriverManager.getConnection(url, db_user, db_password);

} catch (ClassNotFoundException e) {

// TODO Auto-generated catch block

e.printStackTrace();

} catch (SQLException e) {

// TODO Auto-generated catch block

e.printStackTrace();

}

}

public static Connection getConnection() {

return conn;

}

}

存取对象信息的核心工具类:

package com.utils;

import java.io.IOException;

import java.io.ObjectInputStream;

import java.sql.Connection;

import java.sql.PreparedStatement;

import java.sql.ResultSet;

import java.sql.SQLException;

import com.bean.User;

public class DBUtils {

public int addObject(User user) {

String name = user.getName();

String sql = "insert into obj(name,value)values(?,?)";

Connection conn = DBConnection.getConnection();

try {

PreparedStatement ps = conn.prepareStatement(sql);

ps.setString(1, name);

ps.setObject(2, user);

int result = ps.executeUpdate();

return result;

} catch (SQLException e) {

// TODO Auto-generated catch block

e.printStackTrace();

}

return 0;

}

public User getObj(String name) {

Connection conn = DBConnection.getConnection();

String sql = "select * from obj where name=?";

try {

PreparedStatement ps = conn.prepareStatement(sql);

ps.setString(1, name);

ResultSet rs = ps.executeQuery();

while (rs.next()) {

ObjectInputStream ois = new ObjectInputStream(

rs.getBinaryStream("value"));

User user = (User) ois.readObject();

System.out.println("getObj-->" + user.toString());

return user;

}

} catch (SQLException e) {

// TODO Auto-generated catch block

e.printStackTrace();

} catch (IOException e) {

// TODO Auto-generated catch block

e.printStackTrace();

} catch (ClassNotFoundException e) {

// TODO Auto-generated catch block

e.printStackTrace();

}

return null;

}

}

测试类:

将对象添加进数据库:

package com.test;

import com.bean.User;

import com.utils.DBUtils;

public class Test1 {

public static void main(String[] args) {

DBUtils utils = new DBUtils();

User user = new User("小明", "123456");

if (utils.addObject(user) != 0) {

System.out.println("添加成功!");

}

}

}

从数据库中读取出对象信息:

package com.test;

import com.bean.User;

import com.utils.DBUtils;

public class Test1 {

public static void main(String[] args) {

DBUtils utils = new DBUtils();

User user = utils.getObj("小明");

System.out.println(user.toString());

}

}

mysql怎么直接显示对象信息_对象保存进MySQL数据库,从MySQL中读取出对象信息的源码...相关推荐

  1. 习题 9.5 建立一个对象数组,内放5个学生的数据(学号、成绩),设立一个函数max,用指向对象的指针作函数参数,在max函数中找出5个学生中成绩最高者,并输出其学号。

    C++程序设计(第三版) 谭浩强 习题9.5 个人设计 习题 9.5 建立一个对象数组,内放5个学生的数据(学号.成绩),设立一个函数max,用指向对象的指针作函数参数,在max函数中找出5个学生中成 ...

  2. 《工厂订单出入库信息管理系统》完整案例详解(含演示网址账号)(GoVue源码MysqlRedis数据库)

    近期开发了一套工厂订单及出入库信息管理系统,现在系统已经正式上线,我也抽出时间对之前的工作了进行了二次整理,在总结的过程中继续完善. 系统演示网址:出入库系统   演示账号:admin 密码:1234 ...

  3. php 获取照片信息,PHP中读取照片exif信息的方法

    这篇文章主要介绍了PHP中读取照片exif信息的方法,本文从什么是exif信息开始讲解,使用PHP需要什么扩展.及它的安装方法和使用代码示例等,需要的朋友可以参考下 先来了解什么是图片的Exif信息 ...

  4. 使用游标显示销售报表_协助报表开发之 MongoDB join mysql

    集算器 SPL 语言支持处理多样性数据源,通过 SPL 对 MongoDB 集合与 MySql 表进行 join 关联,不仅简化了对 MongoDB 数据的操作,而且有利于与其它报表工具的方便集成.若 ...

  5. 微信小程序js数组初始化_微信小程序开发之改变data中数组或对象的某一属性值...

    前言:在小程序的开发中,我们在view中便利data中数组或对象时,很多情况下需要在js中动态改变数组或者对象中某一香的属性值. 效果图: 我给大家总结了案例如下: wxml如下: {{item.we ...

  6. java 友好时间显示_仿微信的IM聊天时间显示格式(含iOS/Android/Web实现)[图文+源码]...

    本文为原创分享,转载请注明出处. 1.引言 即时通讯IM应用中的聊天消息时间显示是个再常见不过的需求,现在都讲究用户体验,所以时间显示再也不能像传统软件一样简单粗地暴显示成"年/月/日 时: ...

  7. 用mysql创建职工表_【典型例题】数据库——用MySQL来建立创建员工表;-Go语言中文社区...

    作业: 创建员工表(employee),要求包含字段(工号.姓名.年龄.性别.薪资.部门),主键为工号. 要求命令行完成以下操作:(禁止使用图形工具软件) 1)添加三条员工信息 分别是: 1,张三,1 ...

  8. PHP与MySQL外文文献译文和原文_计算机外文翻译---基于PHP和MYSQL的网站设计和实现...

    计算机外文翻译---基于PHP和MYSQL的网站设计和实现 中文 2270 字 译文二 基于 PHP 和 MYSQL 的网站设计和实现 摘要 PHP 和 MYSQL 因为其免费以及开放源码已经成为主要 ...

  9. mysql 允许其他主机访问权限_允许其他主机访问本机MySQL

    来历:Linux公社 1.mysql远程毗连慢或许根本连不上 2.当地登录到mysql控制台,show processlist;看到很多过程,雷同 | 145 | unauthenticated us ...

最新文章

  1. Django数据库的查看、删除,创建多张表并建立表之间关系
  2. 计算机组成原理国防科大课件,中科大计算机组成原理课件ppt.pdf
  3. 连接mysql语言_杂谈各个语言连接数据库如何实现的-第一讲
  4. html文件打开是搜索导航,GitHub - bituplink/OneHtmlNav: 单文件html的网络导航页面,简约并不简单...
  5. 如何在计算机桌面上增添word,怎么在桌面添加Word文档
  6. docker容器之RabbitMQ
  7. 【华为云技术分享】iSulad轻量化容器实践解析
  8. c语言 选择结构,C语言学习:选择结构
  9. php debug 打印变量_PHP_Debug显示所有变量
  10. JAVA 语言如何进行异常处理,关键字: throws,throw,try,catch,finally分别代表什么意义? 在try块中可以抛 出异常吗?...
  11. C语言必背18个经典程序,2022年C语言必背100代码大全
  12. 计算机病毒怎么取消,电脑病毒恶意软件无法删除。怎么办?
  13. 仅在 localhost 中部署并使用 RSSHub
  14. 相机视场角和焦距_镜头焦距和视场角介绍!
  15. Cloudera Manager 5升级(官方翻译整理,企业级实战验证)
  16. 事物(Transaction)
  17. 通过CSS实现 文字渐变色 的两种方式
  18. 几何光学学习笔记(18)- 5.1光阑在光学系统中的作用
  19. linux配置命令的各列解释,很实用的linux运维常用命令及知识 | 旺旺知识库
  20. 新一配:程序员因一行代码被老板开除,网友评论:你这不是脱裤子放屁吗?

热门文章

  1. Python制作词云图根据蒙板图像确定形状和文字颜色
  2. 微课|中学生可以这样学Python(2.1.2节):常量与变量
  3. c++ vector常用用法总结
  4. 【数据结构----笔记3】插入排序算法之【直接插入排序】
  5. 管理后台--3,修改分类
  6. if name==main是什么意思_VLOOKUP反向查找中的IF({1,0}是什么意思?
  7. dbcp连接池配置详解_重学MySQL:事务与连接池,一文详解带你搞懂
  8. 计算机系给未来的自己写信,写信给未来的自己
  9. C++新特性探究(十六):move constructor移动构造
  10. 浙大计算机学院2021复试名单,浙江大学2021年硕士研究生各院复试细则及复试名单汇总...