--DBConnect.java
package com.cmcc.testUtil;
public class DBConnect {
private String driv;
private String url;
private String name;
private String psw;
public DBConnect(String d,String u,String n,String p){
driv = d;
url = u;
name = n;
psw = p;
}
public String getDriv() {
return driv;
}
public void setDriv(String driv) {
this.driv = driv;
}
public String getUrl() {
return url;
}
public void setUrl(String url) {
this.url = url;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getPsw() {
return psw;
}
public void setPsw(String psw) {
this.psw = psw;
}
@Override
public String toString() {
return "DBConnect{" +
"driv='" + driv + '\'' +
", url='" + url + '\'' +
", name='" + name + '\'' +
", psw='" + psw + '\'' +
'}';
}
}
--------------GetDBConn.java
package com.cmcc.testUtil;
import com.alibaba.fastjson.JSONObject;
import com.cmcc.common.constant.Constants;
import com.cmcc.common.utils.DESUtil;
public class GetDBConn {
public static void getDBConn() {
String drive = "oracle.jdbc.driver.OracleDriver";
String url = "jdbc:oracle:thin:@localhost:1521:XE";
String username = "mms";
String password = "mms";
DBConnect conn = new DBConnect(drive,url,username,password);
//展示列印欄位
String json = JSONObject.toJSONString(conn);
System.out.println("物件轉json串:[" + json + "]");
//對字串加密
String mi = DESUtil.jiami(json, Constants.DB_CONN_KEY);
System.out.println("加密:[" + mi + "]");
//對字串解密
String ming = DESUtil.jiemi(mi, Constants.DB_CONN_KEY);
System.out.println("解密:[" + ming + "]");
//解密字串轉物件
//解密串轉json物件
JSONObject jobj = JSONObject.parseObject(ming);
System.out.println("轉json物件:[drive=" + jobj.getString("driv") + ",url="+jobj.getString("url")+",username="+jobj.getString("name")+",password="+jobj.getString("psw")+"]");
DBConnect db = JSONObject.toJavaObject(jobj, DBConnect.class);
System.out.println("轉物件:["+db.toString()+"]");
}
public static void main(String[] args) {
getDBConn();
}
}
------------結果:
物件轉json串:[{"driv":"oracle.jdbc.driver.OracleDriver","name":"mms","psw":"mms","url":"jdbc:oracle:thin:@localhost:1521:XE"}]
加密:[Zmecydh8aDAoINl0emY0c3TuKnGtJpMhMCPrJl7r3yxEcIinJlPxn9i+8B78RI2kRmkJWl8U/rW29xXXg/uiK67YXRrYAI9EIO4LcIVlbuLa/bluouw3IZwj8zV2uQGO5ztEmq62/JPV2SEdcE4UCg==]
解密:[{"driv":"oracle.jdbc.driver.OracleDriver","name":"mms","psw":"mms","url":"jdbc:oracle:thin:@localhost:1521:XE"}]
轉json物件:[drive=oracle.jdbc.driver.OracleDriver,url=jdbc:oracle:thin:@localhost:1521:XE,username=mms,password=mms]
轉物件:[DBConnect{driv='null', url='null', name='null', psw='null'}]
uj5u.com熱心網友回復:
你轉json對像之后為什么引號不見了?uj5u.com熱心網友回復:
為什么轉json后沒有引號了?這樣就是json格式了,為什么解密后還要轉為json?為什么不直接JSONObjecdt.parse()?uj5u.com熱心網友回復:
直接用你的代碼會報錯,改完后也沒有會出現null的地方package yyst.myTest.test.lt20;
import com.alibaba.fastjson.JSONObject;
public class Test01 {
public static void main(String[] args) {
GetDBConn.getDBConn();
}
}
class DBConnect {
private String driv;
private String url;
private String name;
private String psw;
public DBConnect() {
// TODO Auto-generated constructor stub
}
public DBConnect(String d,String u,String n,String p){
driv = d;
url = u;
name = n;
psw = p;
}
public String getDriv() {
return driv;
}
public void setDriv(String driv) {
this.driv = driv;
}
public String getUrl() {
return url;
}
public void setUrl(String url) {
this.url = url;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getPsw() {
return psw;
}
public void setPsw(String psw) {
this.psw = psw;
}
@Override
public String toString() {
return "DBConnect{" +
"driv='" + driv + '\'' +
", url='" + url + '\'' +
", name='" + name + '\'' +
", psw='" + psw + '\'' +
'}';
}
}
class GetDBConn {
public static void getDBConn() {
String drive = "oracle.jdbc.driver.OracleDriver";
String url = "jdbc:oracle:thin:@localhost:1521:XE";
String username = "mms";
String password = "mms";
DBConnect conn = new DBConnect(drive,url,username,password);
//展示列印欄位
String json = JSONObject.toJSONString(conn);
System.out.println("物件轉json串:[" + json + "]");
//對字串加密
String mi = "mi";
System.out.println("加密:[" + mi + "]");
//對字串解密
String ming = "ming";
System.out.println("解密:[" + ming + "]");
//解密字串轉物件
//解密串轉json物件
JSONObject jobj = JSONObject.parseObject(json);
System.out.println("轉json物件:[drive=" + jobj.getString("driv") + ",url="+jobj.getString("url")+",username="+jobj.getString("name")+",password="+jobj.getString("psw")+"]");
DBConnect db = JSONObject.toJavaObject(jobj, DBConnect.class);
System.out.println("轉物件:["+db.toString()+"]");
}
// public static void main(String[] args) {
// getDBConn();
// }
}
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/101817.html
標籤:Web 開發
上一篇:求問Spring Security獲取自定義用戶資訊的問題,求高手解答
下一篇:大神幫看 這段代碼錯在哪
