日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区

您的位置:首頁(yè)技術(shù)文章
文章詳情頁(yè)

Java實(shí)現(xiàn)簡(jiǎn)單聊天機(jī)器人

瀏覽:224日期:2022-08-09 13:00:10

本文實(shí)例為大家分享了Java實(shí)現(xiàn)簡(jiǎn)單聊天機(jī)器人的具體代碼,供大家參考,具體內(nèi)容如下

整個(gè)小案例:整合了Java socket編程、jdbc知識(shí)(ORM/DAO)

創(chuàng)建數(shù)據(jù)庫(kù)和表,準(zhǔn)備表數(shù)據(jù)(MySQL)

首先創(chuàng)建一個(gè)數(shù)據(jù)庫(kù)android然后創(chuàng)建一個(gè)表dictionary,字段:

id intreceive varchar(100)response varchar(100)

receive 表示受到的信息response 表示回應(yīng)的信息

create database android;use android;create table dictionary( id int AUTO_INCREMENT, receive varchar(100), response varchar(100), PRIMARY KEY (id)) DEFAULT CHARSET=utf8;insert into dictionary values(null,’你好’,’好你妹!’);insert into dictionary values(null,’你叫什么’,’你想泡我啊?’);insert into dictionary values(null,’你叫什么’,’同志,不約’);insert into dictionary values(null,’打你哦’,’來(lái)啊,來(lái)打我啊’);

Java實(shí)現(xiàn)簡(jiǎn)單聊天機(jī)器人

對(duì)象設(shè)置(ORM)

對(duì)象關(guān)系映射,設(shè)置對(duì)象對(duì)應(yīng)數(shù)據(jù)庫(kù)中的各字段。

package socket;public class Dictionary { public int id; public String receive; // 接收 public String response; // 回應(yīng)}

數(shù)據(jù)訪問(wèn)對(duì)象(DAO)

package socket;import java.sql.Connection;import java.sql.DriverManager;import java.sql.PreparedStatement;import java.sql.ResultSet;import java.sql.SQLException;import java.util.ArrayList;import java.util.List;public class DictionaryDAO { public DictionaryDAO() {try { Class.forName('com.mysql.jdbc.Driver');} catch (ClassNotFoundException e) { e.printStackTrace();} } public Connection getConnection() throws SQLException {return DriverManager.getConnection('jdbc:mysql://127.0.0.1:3306/android?characterEncoding=UTF-8', 'root','admin'); } public List<Dictionary> query(String recieve) {List<Dictionary> ds = new ArrayList<Dictionary>();String sql = 'select * from dictionary where receive = ? ';try (Connection c = getConnection(); PreparedStatement ps = c.prepareStatement(sql);) { ps.setString(1, recieve); ResultSet rs = ps.executeQuery(); while (rs.next()) {Dictionary d = new Dictionary();int id = rs.getInt(1);String receive = rs.getString('receive');String response = rs.getString('response');d.id = id;d.receive = receive;d.response = response;ds.add(d); }} catch (SQLException e) { e.printStackTrace();}return ds; }}

此處,如果不是代碼編寫(xiě)問(wèn)題,出現(xiàn)jdbc錯(cuò)誤,請(qǐng)注意是否打開(kāi)MySQL數(shù)據(jù)庫(kù)。

server端

主要是正常的socket入門(mén)編程。通過(guò)輸入流收到Client端發(fā)來(lái)的數(shù)據(jù)(打印),然后查詢(xún)語(yǔ)料對(duì)話(huà)庫(kù),查到返回正常對(duì)話(huà),查不到表示聽(tīng)不懂。

package socket;import java.io.DataInputStream;import java.io.DataOutputStream;import java.io.IOException;import java.io.InputStream;import java.io.OutputStream;import java.net.ServerSocket;import java.net.Socket;import java.util.ArrayList;import java.util.Collections;import java.util.List;public class Server { private static List<String> cannotUnderstand= new ArrayList<>(); static{cannotUnderstand.add('聽(tīng)求不懂啊');cannotUnderstand.add('說(shuō)人話(huà)');cannotUnderstand.add('再說(shuō)一遍?');cannotUnderstand.add('大聲點(diǎn)');cannotUnderstand.add('老子在忙,一邊玩兒去'); } public static void main(String[] args) {try { ServerSocket ss = new ServerSocket(8888); System.out.println('監(jiān)聽(tīng)在端口號(hào):8888'); Socket s = ss.accept(); InputStream is = s.getInputStream(); DataInputStream dis = new DataInputStream(is); OutputStream os = s.getOutputStream(); DataOutputStream dos = new DataOutputStream(os); while (true) {String msg = dis.readUTF();System.out.println(msg);List<Dictionary> ds= new DictionaryDAO().query(msg);String response = null;if(ds.isEmpty()){ Collections.shuffle(cannotUnderstand); response = cannotUnderstand.get(0);}else{ Collections.shuffle(ds); response = ds.get(0).response;}dos.writeUTF(response); }} catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace();} }}

Client端

正常的收發(fā)信息

package socket;import java.io.DataInputStream;import java.io.DataOutputStream;import java.io.IOException;import java.io.InputStream;import java.io.OutputStream;import java.net.Socket;import java.net.UnknownHostException;import java.util.Scanner;public class Client { public static void main(String[] args) {try { // 連接到本機(jī)的8888端口 Socket s = new Socket('127.0.0.1', 8888); // OutputStream os = s.getOutputStream(); DataOutputStream dos = new DataOutputStream(os); InputStream is = s.getInputStream(); DataInputStream dis = new DataInputStream(is); while (true) {Scanner sc = new Scanner(System.in);String str = sc.next();dos.writeUTF(str);String msg = dis.readUTF();System.out.println(msg); }} catch (UnknownHostException e) { e.printStackTrace();} catch (IOException e) { e.printStackTrace();} }}

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持好吧啦網(wǎng)。

標(biāo)簽: Java
相關(guān)文章:
日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区
欧美黑人巨大videos精品| 欧美日韩91| 日韩电影免费在线观看| 国产一区二区三区四区大秀| 久久精品二区亚洲w码| 黄色精品视频| 91精品亚洲| 蜜臀精品一区二区三区在线观看 | 欧美日韩中文| 久久精品国产99国产| 色爱综合av| 蜜芽一区二区三区| 国产精品videossex久久发布| 国产色噜噜噜91在线精品| 国产不卡一区| 中文一区在线| 国产精品xxx在线观看| 久久九九99| 日本精品另类| 日韩影院二区| 亚洲精品少妇| 国际精品欧美精品| 精品一区欧美| 国产精品亚洲综合色区韩国| 日韩欧美少妇| 日韩精品视频网站| 日韩免费av| 天堂精品久久久久| 国产一区二区三区不卡视频网站| 好吊视频一区二区三区四区| 久久狠狠久久| 国产韩日影视精品| 欧美激情三区| 亚洲精品中文字幕乱码| 国产精品久久亚洲不卡| 亚洲福利久久| 国产欧美一区二区三区精品观看| 日韩伦理一区| 88久久精品| 精品在线91| 精品国内亚洲2022精品成人 | 91久久国产| 日本不卡高清| 国产精品99一区二区| 国产精品xxxav免费视频| 国产亚洲激情| 日本精品不卡| 国产精品亚洲综合久久| 红桃视频国产一区| 精品亚洲成人| 天海翼亚洲一区二区三区| 日韩欧美一区二区三区在线视频| 日韩av午夜在线观看| 99tv成人| 精品视频网站| 日本欧美一区二区| 亚洲免费成人| 福利视频一区| 国产欧美久久一区二区三区| 国产精品外国| 国产麻豆久久| 国产一区日韩| 国产精品视频一区二区三区综合| 视频一区视频二区中文字幕| 韩国三级一区| 精品一区电影| 国产精品久久久久av蜜臀| 亚洲人www| 亚洲综合欧美| 午夜国产精品视频免费体验区| 亚洲美女久久精品| 久久久免费人体| 91嫩草精品| 四虎精品永久免费| 日韩中文字幕亚洲一区二区va在线| 久久九九国产| 亚洲天堂av影院| 成人精品久久| 国产91在线精品| 国产一区二区三区不卡视频网站 | 91精品电影| 99精品网站| 91精品一区二区三区综合| 国产激情在线播放| 国产精品网在线观看| 欧美亚洲综合视频| 久久精品99国产精品日本| 97se亚洲| 国产精品嫩模av在线| 国产精品一区二区美女视频免费看 | 激情久久五月| 美女少妇全过程你懂的久久| 国户精品久久久久久久久久久不卡 | 精品国产精品国产偷麻豆| 国产精品久久久久久久久久久久久久久 | 亚洲精品美女91| 免费精品视频最新在线| 综合精品一区| 日韩不卡在线观看日韩不卡视频 | 日韩一区二区三区在线看| 亚洲精品麻豆| 青青草91久久久久久久久| 国产极品模特精品一二| 国产精品红桃| 国产一区二区色噜噜| 亚洲综合电影| 欧美日韩中文一区二区| 欧美~级网站不卡| 欧美午夜不卡| 亚洲精品欧美| 久久国产欧美日韩精品| 国产欧美91| 成人污污视频| 99精品在线观看| 老鸭窝毛片一区二区三区| 亚洲精品九九| 免费在线亚洲欧美| 欧美日韩在线观看首页| 亚洲先锋成人| 日本亚洲三级在线| 国产精品久久久久77777丨| 国产69精品久久| 国产综合视频| 日韩高清在线观看一区二区| 国产欧美一区二区三区米奇| 欧美亚洲日本精品| 亚洲精品2区| 日韩不卡一二三区| 波多视频一区| 亚洲一区日本| 国产欧美日韩在线观看视频 | 国产精品多人| 激情婷婷亚洲| 国产亚洲一卡2卡3卡4卡新区| 久久精品国产99国产精品| 亚洲国内欧美| 视频一区国产视频| 免费在线观看一区| 日韩国产在线| 日本不卡的三区四区五区| 色乱码一区二区三区网站| 亚洲午夜电影| 国产日韩一区| 美女少妇全过程你懂的久久| 91精品视频一区二区| 国产成人免费视频网站视频社区| 免费视频一区三区| 国产精品4hu.www| 欧美网站在线| 精品久久在线| 蜜臀久久久久久久| 红杏一区二区三区| 国产精品免费看| 国产成人免费av一区二区午夜| 99国产精品99久久久久久粉嫩| 美女久久99| 蜜臀av一区二区在线免费观看| 国产精品久久观看| 午夜久久av | 日韩欧美精品| 久久精品99久久久| 一区在线免费| 精品日韩在线| 亚洲人成亚洲精品| 电影亚洲精品噜噜在线观看| 日韩精选在线| 99视频精品| 日韩精品dvd| 麻豆精品久久| 日韩精品一页| 视频在线观看91| 色爱av综合网| 麻豆91在线播放| 日韩激情网站| 国产欧美高清视频在线| 日韩视频一区二区三区在线播放免费观看| 精品色999| 国产精品综合色区在线观看| 在线视频观看日韩| 麻豆一区二区三| 亚洲精品少妇| 蜜臀精品久久久久久蜜臀| 激情综合自拍| 三上悠亚国产精品一区二区三区| 麻豆精品99| 国产精品一卡| 欧美日本二区| 日本午夜精品视频在线观看| 香蕉精品999视频一区二区| 999久久久国产精品| 国内精品伊人| 久久精品国产在热久久| 国产精品亚洲片在线播放| 欧美日韩亚洲一区二区三区在线| 在线观看亚洲精品福利片| 亚洲深夜福利| 亚洲中字黄色| 免费黄网站欧美| 免费观看久久久4p| 亚洲视频电影在线|