package com.cn.jdbc;
專注于為中小企業(yè)提供網(wǎng)站設(shè)計(jì)、成都網(wǎng)站制作服務(wù),電腦端+手機(jī)端+微信端的三站合一,更高效的管理,為中小企業(yè)潮州免費(fèi)做網(wǎng)站提供優(yōu)質(zhì)的服務(wù)。我們立足成都,凝聚了一批互聯(lián)網(wǎng)行業(yè)人才,有力地推動(dòng)了上千家企業(yè)的穩(wěn)健成長,幫助中小企業(yè)通過網(wǎng)站建設(shè)實(shí)現(xiàn)規(guī)模擴(kuò)充和轉(zhuǎn)變。
import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.ArrayList;
import java.util.List;
//import java.awt.List;
public class Query {
public ListUserVo showUser(){
Connection conn=null;
Statement stmt=null;
ResultSet rs=null;
ListUserVo list=new ArrayListUserVo();
try{
conn=JDBC_Connection.getConnection();
stmt=conn.createStatement();
rs=stmt.executeQuery("select * from users");
while(rs.next()){
UserVo userVo=new UserVo();
userVo.setId(rs.getInt("id"));
userVo.setName(rs.getString("name"));
userVo.setAge(rs.getInt("age"));
userVo.setTel(rs.getString("tel"));
userVo.setAddress(rs.getString("address"));
list.add(userVo);
}
}catch(SQLException e){
e.printStackTrace();
}finally{
JDBC_Connection.free(rs, conn, stmt);
}
return list;
}
public static void main(String[] args) {
Query query=new Query();
ListUserVo list=query.showUser();
if(list!=null){
System.out.print("id\t");
System.out.print("name\t");
System.out.print("age\t");
System.out.print("tel\t");
System.out.print("address\t");
System.out.println();
for(int i=0;ilist.size();i++){
System.out.print(list.get(i).getId()+"\t");
System.out.print(list.get(i).getName()+"\t");
System.out.print(list.get(i).getAge()+"\t");
System.out.print(list.get(i).getTel()+"\t ");
System.out.print(list.get(i).getAddress()+"\t");
System.out.println();
}
}
}
}
要自己加驅(qū)動(dòng),,,,這個(gè)你應(yīng)該可以看懂吧,,
import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.ArrayList;
import java.util.List;
//import java.awt.List;
public class Query {
public ListUserVo showUser(){
Connection conn=null;
Statement stmt=null;
ResultSet rs=null;
ListUserVo list=new ArrayListUserVo();
try{
conn=JDBC_Connection.getConnection();
stmt=conn.createStatement();
rs=stmt.executeQuery("select * from users");
while(rs.next()){
UserVo userVo=new UserVo();
userVo.setId(rs.getInt("id"));
userVo.setName(rs.getString("name"));
userVo.setAge(rs.getInt("age"));
userVo.setTel(rs.getString("tel"));
userVo.setAddress(rs.getString("address"));
list.add(userVo);
}
}catch(SQLException e){
e.printStackTrace();
}finally{
JDBC_Connection.free(rs, conn, stmt);
}
return list;
}
public static void main(String[] args) {
Query query=new Query();
ListUserVo list=query.showUser();
if(list!=null){
System.out.print("id\t");
System.out.print("name\t");
System.out.print("age\t");
System.out.print("tel\t");
System.out.print("address\t");
System.out.println();
for(int i=0;ilist.size();i++){
System.out.print(list.get(i).getId()+"\t");
System.out.print(list.get(i).getName()+"\t");
System.out.print(list.get(i).getAge()+"\t");
System.out.print(list.get(i).getTel()+"\t ");
System.out.print(list.get(i).getAddress()+"\t");
System.out.println();
}
}
}
}
建議提前檢查,為yellow直接提醒運(yùn)維去維護(hù)為green。不過我這邊用的es6.2.3yellow是正常查詢的。建議你檢查一下環(huán)境配置應(yīng)該不是yellow的問題。試了一下;為red都可以正常查詢的(java代碼查詢結(jié)果和下圖es-head查詢結(jié)果一致)
字符:H E L L O!
位置:0 1 2 3 4 5
lastIndexOf()是從后往前找,lastIndexOf('L',1)表示從 E 往前找,當(dāng)然找不到了,
你把 lastIndexOf('L',2或3或4或5)就能找到了。
SolrQuery solrQuery = new SolrQuery(); Map map = new HashMap(); map.put(FacetParams.FACET_DATE, "manufacturedate_dt"); map.put(FacetParams.FACET_DATE_START,"2004-01-01T00:00:00Z"); map.put(FacetParams.FACET_DATE_END,"2010-01-01...
java代碼內(nèi)創(chuàng)建mysql索引_如何利?Java代碼操作索引庫?今天是劉?愛?學(xué)Java的第161天。
感謝你的觀看,謝謝你。
學(xué)習(xí)計(jì)劃安排如下:學(xué)了?天的Elasticserch,但都是它本?的知識(shí)點(diǎn),如何通過Java語?去操作它呢?
這就好?以前學(xué)數(shù)據(jù)庫,在數(shù)據(jù)庫?具中通過sql語句也能實(shí)現(xiàn)增刪改查,?在Java中就可以通過jdbc操作數(shù)據(jù)庫。
這?不學(xué)原?的Elasticsearch客戶端,?是直接學(xué)習(xí)spring提供的套件:SpringDataElasticsearch。
畢竟要知道,我們以前也基本沒?原?的jdbc,?是?的框架,使?起來也簡便。
?、創(chuàng)建Demo?程
關(guān)于SpringDataElasticsearch介紹:
學(xué)Java有?個(gè)繞不開的坎就是spring,就是主流的很多功能都會(huì)看到spring的影?。
我們已經(jīng)接觸過了的就有:SpringMVC、Spring、SpringBoot、SpringCloud。
今天繼續(xù)接觸Spring Data中的?個(gè)模塊。
為了更好地學(xué)習(xí),創(chuàng)建?個(gè)demo?程。
通過spring腳?架創(chuàng)建項(xiàng)?
①Spring Initializr
使?idea開發(fā)?具創(chuàng)建Java項(xiàng)?有多種?式,以前就是通過Maven??創(chuàng)建?個(gè)項(xiàng)?。
也可以通過Spring Initializr創(chuàng)建?個(gè)項(xiàng)?。
②說明項(xiàng)?名和Java版本號(hào)
項(xiàng)?名為es-demo,使?的jdk8.
③指定項(xiàng)?中需要?到的依賴
這?也就是springDataElasticsearch。
下圖也就是創(chuàng)建好后的項(xiàng)?結(jié)構(gòu):
該?式創(chuàng)建的好處在于:
我們不???導(dǎo)?依賴了,依賴是在創(chuàng)建項(xiàng)?時(shí)指定的,也就是創(chuàng)建項(xiàng)?中的步驟③
同時(shí)關(guān)于啟動(dòng)類、配置?件都幫我們?學(xué)創(chuàng)建好了,其實(shí)?外乎就是上述三個(gè)核?關(guān)鍵步驟:啟動(dòng)類、配置?件、pom?件。
該?式創(chuàng)建的壞處在于:
版本問題,項(xiàng)?中可能?的是?較舊的版本,spring創(chuàng)建的版本需要??修改。
根據(jù)??的需求選擇創(chuàng)建?式就好。
此外關(guān)于配置?件:
??配置的是properties?件,?我們常?的是yml?件,這?將其修改成yml?件。
在配置?件中指定elasticsearch中對(duì)應(yīng)的ip+端?,也就是我們前?天在虛擬機(jī)上安裝elasticsearch的ip和端?。
?、創(chuàng)建索引和映射
我們以前使?MySQL數(shù)據(jù)庫的時(shí)候,在Java中是實(shí)體類對(duì)應(yīng)了數(shù)據(jù)庫中的表數(shù)據(jù)。
同樣的道理,現(xiàn)在是索引庫了,在Java中也是使?實(shí)體類對(duì)應(yīng)對(duì)應(yīng)的索引庫。
注解@Document說明對(duì)應(yīng)的索引庫:indexName:索引庫名稱叫item。
type:索引庫類型docs。
shards:分?。
replicas:副本。
注解@Field說明索引庫字段:
類型有很多種,double屬于數(shù)字型,text和string屬于字符型,其中text表?分詞,string表?不分詞,上述中的keyword其實(shí)也就對(duì)應(yīng)著string。
注意images這個(gè)字段,index=false表?不需要索引,說明該字段不需要搜索功能。
我們以前學(xué)數(shù)據(jù)庫的時(shí)候,在Java中操作數(shù)據(jù)庫使?到了JdbcTemplate。
現(xiàn)在是要操作索引庫,同樣的道理,也有?個(gè)ElasticsearchTemplate
①createIndex()
創(chuàng)建索引庫,參數(shù)為實(shí)體類的Class對(duì)象。
②putMapping()
說明字段映射關(guān)系,參數(shù)同上。
三、實(shí)現(xiàn)增刪改查
通過JdbcTemplate實(shí)現(xiàn)數(shù)據(jù)庫的增刪改查,索引庫中?ElasticsearchTemplate。
但是我們不?這種?式?是?其它?式。
畢竟我們現(xiàn)在操作數(shù)據(jù)庫也沒?JdbcTemplate?是常常使?通?mapper。
該?法也就類似于通?mapper。
在通?mapper中我們是創(chuàng)建?個(gè)?定義接?繼承mapper接?。
再說明泛型之后,就可以直接使?這個(gè)接?完成增刪改查操作了。
同樣的道理,在這?是也是?定義?個(gè)接?繼承ElasticsearchRepository接?。
關(guān)于這個(gè)接?的繼承體系圖通過上圖也能查看到,名稱也都是見名知義的。
1新增索引
saveAll?法,看它的名字也就知道了其對(duì)應(yīng)的也就是新增操作。
其中關(guān)于新增,可以添加?條數(shù)據(jù),也可以添加多條數(shù)據(jù),例?中使?的是批量操作。
注意:在正式項(xiàng)?中應(yīng)該是從數(shù)據(jù)庫這種查詢到需要實(shí)現(xiàn)搜索功能的數(shù)據(jù),再將這些數(shù)據(jù)添加到索引庫中,從?實(shí)現(xiàn)搜索功能。
我這邊為了?便是??創(chuàng)建的偽數(shù)據(jù)。
2查詢索引
findAll也就是查詢所有的數(shù)據(jù),因?yàn)槲覀兲砑恿硕鄺l數(shù)據(jù),所以查詢結(jié)果是?個(gè)集合。
增強(qiáng)for循環(huán)遍歷輸出,在控制臺(tái)上也就能查詢到新增的數(shù)據(jù)。
同樣的道理,還有deleteAll刪除索引,當(dāng)然這是都是最簡單最基礎(chǔ)的?種api,后續(xù)更多?法再說明。
最后
?有不得反求諸?,我是@劉?愛
?個(gè)?天上班晚上學(xué)習(xí)的95后滬漂,不為其它,只為學(xué)會(huì)?律做好??,也愿我的每?打卡能給你帶來勇?,歡迎點(diǎn)贊關(guān)注和評(píng)論。
¥
5.9
百度文庫VIP限時(shí)優(yōu)惠現(xiàn)在開通,立享6億+VIP內(nèi)容
立即獲取
java代碼內(nèi)創(chuàng)建mysql索引_如何利用Java代碼操作索引庫?
java代碼內(nèi)創(chuàng)建mysql索引_如何利?Java代碼操作索引庫?今天是劉?愛?學(xué)Java的第161天。
感謝你的觀看,謝謝你。
學(xué)習(xí)計(jì)劃安排如下:學(xué)了?天的Elasticserch,但都是它本?的知識(shí)點(diǎn),如何通過Java語?去操作它呢?
這就好?以前學(xué)數(shù)據(jù)庫,在數(shù)據(jù)庫?具中通過sql語句也能實(shí)現(xiàn)增刪改查,?在Java中就可以通過jdbc操作數(shù)據(jù)庫。
這?不學(xué)原?的Elasticsearch客戶端,?是直接學(xué)習(xí)spring提供的套件:SpringDataElasticsearch。
畢竟要知道,我們以前也基本沒?原?的jdbc,?是?的框架,使?起來也簡便。
第 1 頁
?、創(chuàng)建Demo?程
關(guān)于SpringDataElasticsearch介紹:
學(xué)Java有?個(gè)繞不開的坎就是spring,就是主流的很多功能都會(huì)看到spring的影?。
本文標(biāo)題:java索引代碼 java string索引
網(wǎng)站鏈接:http://jinyejixie.com/article42/dodoihc.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站內(nèi)鏈、移動(dòng)網(wǎng)站建設(shè)、App設(shè)計(jì)、企業(yè)建站、網(wǎng)站改版、外貿(mào)建站
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)