java获取json参数,JSONObject转换为java对象

图片说明图片说明

不知道为什么这个id转换后为null

JSONObject对象里面有id值,映射成java对象book的时候id值为null

7个回答

应该是Book数据类型问题,如果没问题,可以利用楼上说的gson试试看

Book怎么定义的,是不是string类型
class Book
{
private String id;
public String getid() { return id; }
public void setid(String value) { id = value; }
...
}

实体对象都要序列化方便网络传输,并且提供getset方法

Book对象中ID类型要是String,并且有setter getter的方法。
另外推荐google的Gson包做json的转换,特别好用。

将json转为对象
Gson gson = new Gson();
Book book = gson.fromJson(json, Book.class);

对象直接转换为json字符串
Gson gson = new Gson();
String json=gson.toJson(Book);

1.在实体类中定义tojson方法 2.JSONObject jsonObject = new JSONObject(entity.toJson);

User user = JSONObject.toJavaObject(data, User.class);
将json数据转化为对象

建议你看一下Book对象中,是否对属性id定义set方法。

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
使用JSONObject的fromObject方法转换成JsonObject对象时
使用JSONObject的fromObject方法转换成JsonObject对象时,在对象中有Date类型的属性,且值为null,然后就报空指针异常了 net.sf.json.JSONException: java.lang.NullPointerException at net.sf.json.JSONObject._fromBean(JSONObject.java:987) at net.sf.json.JSONObject.fromObject(JSONObject.java:168)
java 用import net.sf.json.JSONArray; import net.sf.json.JSONObject;这个工具转换的jsonArray?
JosnArray arr = new JsonArray(); arr.add("1"); arr.add("2"); arr.add{"3"} 我想把这个数组输出 变成["3","2","1"]而不是["1","2","3"]求大神指点
将json对象转化为java对象?
TestBean tb = new TestBean(); tb.setName("闫燕飞"); tb.setSex("男"); List<String> list = new ArrayList<String>(); list.add("mother"); list.add("father"); tb.setParentName(list); //将一个实体类对象转化为json对象 JSONObject jo1= JSONObject.fromObject(tb); //将json对象转化为java对象(这里编译通过,执行的时候报异常) TestBean tb1 = (TestBean)JSONSerializer.toJava(jo1); 异常:Exception in thread "main" java.lang.ClassCastException: net.sf.ezmorph.bean.MorphDynaBean cannot be cast to com.second.TestBean
使用java解析JSON页面时候,遇到JSON某处位置格式不一致,停止解析如何解决
解析JSON时将JSONObject强制转换为String,解析的结果就会减少
Java中json反序列化,double类型自动四舍五入,急急急!
JAVA中JSONObject.fromObject这个方法转换json对象的时候,如果json字符串中值为double类型,会自动四舍五入,有人遇到过这个问题吗? ![图片说明](https://img-ask.csdn.net/upload/201611/21/1479696878_778820.png)
fastjson解析http的get 参数,转换成java对象
我的http请求头如下 ```http http://localhost:8080/trace/Weather?temperatureMax=22&temperatureMin=1&humedityMax=52&humedityMin=2 ``` 当我请求后,json会得到一个这个 ```java weather = {"temperatureMax":["11"],"temperatureMin":["2"],"humidityMax":["55"],"humidityMin":["2"]} ``` 如果我使用parstObject()转换 weather java对象会报出一个异常"["无法转换 大概的意思是我想把 最大温度11 转到weather 对象中但是[11] 他当作一个整体. 如果我一个一个取出来使用Weather构造函数创造一个实例. 那么就成了一个数组 ```java jsonObject.getInteger("temperatureMax");//出现 [ 问题 jsonObject.get("tempertureMax"); //得到的是一个String数组但是只有一个数据. ``` 我最后处理办法 ```java protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { @SuppressWarnings("unchecked") JSONObject jsonWeather = new JSONObject(request.getParameterMap()); // GardenWeather weather = new GardenWeather(jsonWeather.getInteger("temperatureMax"), jsonWeather.getInteger("temperatureMin") // , jsonWeather.getInteger("humidityMax"), jsonWeather.getInteger("humidityMin")); // System.out.println(weather.toString()); log.info("weather = " + jsonWeather.toJSONString()); response.getWriter().write("temperatureMax = " + jsonWeather.toJSONString() ); response.getWriter().println(); String[] max = (String[]) jsonWeather.get("temperatureMax"); response.getWriter().write(new Integer(max[0]).toString()); weatherService.insertWeather(); } ``` 请问有没有更好的办法可以把http中的get请求转换成jave对象
Java json字符串转jsonobject报错????
从前端用将这个json字符串传到后台var list = '[{fd_begin_day=20180312,fd_hour_size=2天,fd_last_write_sap_log=2018-03-12 20:53:00 写入 E Message:读取信息类0001时失败!,fd_leave_type=9110事假,fd_end_day=20180313,fd_item_id=1621a4605e97fa4c9b7c642417aba84f,fd_end_time=180000,fd_employeeid=01007068,fd_sap_flag=E,fd_begin_time=083000,doc_subject=任阿强的事假申请,fd_is_full_day=1,fd_id=1621a441aa32ef98351d2824eb7a9156},{fd_begin_day=20180312,fd_hour_size=2天,fd_last_write_sap_log=2018-03-12 20:53:00 写入 E Message:读取信息类0001时失败!,fd_leave_type=9110事假,fd_end_day=20180313,fd_item_id=1621a4605e97fa4c9b7c642417aba84f,fd_end_time=180000,fd_employeeid=01007068,fd_sap_flag=E,fd_begin_time=083000,doc_subject=任阿强的事假申请,fd_is_full_day=1,fd_id=1621a441aa32ef98351d2824eb7a9156}]' 后台接受到这个list并将这个list转换 JSONArray json = JSONArray.fromObject(list); 报错net.sf.json.JSONException: Expected a ',' or '}' at character 76 of [{fd_begin_day=20180312,fd。。。。。
jsonObject转String发生类型转换异常
JSONObject tradeJson = new JSONObject(getTradeData()); context.put("TransNo", (String)tradeJson.get("TransNo")); context.put("ESBRspRcvTime", (String)tradeJson.get("ESBRspRcvTime")); context.put("ESBReqRcvTime", (String)tradeJson.get("ESBReqRcvTime")); context.put("RetCode", (String)tradeJson.get("RetCode")); 前面3个转换都没有问题,第4个就会报java.lang.ClassCastException:org.json.JSONObject cannot be cast to java.lang.String 或者说什么情况下会报这种错误,谢谢各位大神可以帮忙!!!
java map转json字符串
使用dom4j解析xml后,写了一周总是出现各种bug,最后终于找到原因了,原来是JsonObject转换的内部有过滤。最后写成map格式。但不知道怎么把map转成json。 ps:本来打算使用正则替换,看了看,难度太大了
请教java对象集合用json转换成字符串的问题
如题,我在用JSONArray.fromObject()将对象集合转换成字符串的时候给我报了个如下图的异常![图片说明](https://img-ask.csdn.net/upload/201607/30/1469867156_465306.png) 这个异常是我用debug走到下面这段代码时抛出的 ``` JSONArray jsonArray=JSONArray.fromObject(ypyizhuList);//抛出异常的代码 String aa=jsonArray.toString(); ``` 其中ypyizhuList是一个对象集合。 为了大神忙好帮我解决问题,现将主要的代码贴出,希望有高手帮我解决下,自己实在不知道该怎么解决了,代码如下 ``` import java.util.ArrayList; import java.util.List; import javax.servlet.http.HttpServletRequest; import net.sf.json.JSONArray; import net.sf.json.JSONObject; import org.apache.struts2.ServletActionContext; import com.opensymphony.xwork2.ActionSupport; import com.pb.entity.Qtfy; import com.pb.util.Ypyznr; public class CycfAction extends ActionSupport { private String feibie; private String lczhenduan; private String kebie; private String mark; private List<Ypyznr> ypyizhuList; private List<Qtfy> qtfyyizhuList; private Ypyznr ypyznr=new Ypyznr(); private Qtfy qtfy=new Qtfy(); public String cycf(){ HttpServletRequest request = ServletActionContext.getRequest(); String[] ypyizhu=request.getParameterValues("ypyizhu"); String[] qtfyyizhu=request.getParameterValues("qtfyyizhu"); ypyizhuList=new ArrayList<Ypyznr>(); qtfyyizhuList=new ArrayList<Qtfy>(); for(int i=0;i<ypyizhu.length;i++){ String[] objypyizhu=ypyizhu[i].split(","); ypyznr.setYpmc(objypyizhu[0]); ypyznr.setZddwsl(objypyizhu[1]); ypyznr.setZddw(objypyizhu[2]); ypyznr.setZxdwsl(objypyizhu[3]); ypyznr.setZxdw(objypyizhu[4]); ypyznr.setJe(objypyizhu[5]); ypyizhuList.add(ypyznr); } for(int a=0;a<qtfyyizhu.length;a++){ String[] objqtfyyizhu=qtfyyizhu[a].split(","); qtfy.setQtfymc(objqtfyyizhu[0]); qtfy.setQtfyje(objqtfyyizhu[1]); qtfyyizhuList.add(qtfy); } JSONArray jsonArray=JSONArray.fromObject(ypyizhuList);//抛出异常的代码 String aa=jsonArray.toString(); JSONArray jsonArraytow=JSONArray.fromObject(qtfyyizhuList); String bb=jsonArraytow.toString(); System.out.println(aa); System.out.println(bb); return "success"; } ``` 我怀疑是jar包的问题,但是不知道是不是jar包有问题,现把所有的jar包也贴出来吧,望高手帮忙看下,所有jar包如下图 ![图片说明](https://img-ask.csdn.net/upload/201607/30/1469868271_895885.png) ![图片说明](https://img-ask.csdn.net/upload/201607/30/1469868288_757893.png)
GSON解析 json转java对象问题
使用Gson将JSONObject objectObj 对象转换为Charge对象部分代码: Gson gs = new GsonBuilder().setDateFormat("yyyy-MM-dd").create(); Charge charge = gs.fromJson(objectObj.toString(), Charge.class); 问题是结果charge与objectObj结构一致但是某些字段的值不一样了!!! 详见截图,及截图中的标记信息,请大神们提供解决方案: ![图片说明](https://img-ask.csdn.net/upload/201512/07/1449492576_337791.png)
json转换出现警告怎么去除
下面是访问后台时json转换时出现的警告, 在网上搜索下, 很多人出现过这种情况, 没搜索到解决方案, 希望大家帮忙可以去除掉这些警告, 虽然不影响使用 [code="java"]2011-8-19 10:20:11 net.sf.json.JSONObject defaultBeanProcessing 信息: Property 'parent' of class com.huawei.ifree.autotest.log.analyse.platform.checkednode.CheckedTestSuiteLogNode has no read method. SKIPPED 2011-8-19 10:20:11 net.sf.json.JSONObject defaultBeanProcessing 信息: Property 'parent' of class com.huawei.ifree.autotest.log.analyse.platform.checkednode.CheckedTestSuiteLogNode has no read method. SKIPPED 2011-8-19 10:20:11 net.sf.json.JSONObject defaultBeanProcessing 信息: Property 'parent' of class com.huawei.ifree.autotest.log.analyse.platform.node.ProjectLogNode has no read method. SKIPPED[/code]
String / JSON 转 java对象卡掉
本应该控制台输出 product0:null product1:(这里是product的内容) ![这是控制台输出](https://img-ask.csdn.net/upload/201905/19/1558275712_499047.png) ![这是小程序data中建立的对象](https://img-ask.csdn.net/upload/201905/19/1558275734_579401.png) ![这是java 类](https://img-ask.csdn.net/upload/201905/19/1558275805_641595.png) System.out.println("product0:"+product); JSONObject parseObject = JSONObject.parseObject(productStr); product = JSONObject.toJavaObject(parseObject, Product.class); System.out.println("product1:"+product); ``` ```Product product = null; ```try { String productStr = String.valueOf(request.getParameter("productStr")); System.out.println("productstr------>"+productStr); //System.out.println("productstr:----------->"+productStr); // 尝试获取前端传过来的表单string流并将其转换成Product实体类 System.out.println("product0:"+product); JSONObject parseObject = JSONObject.parseObject(productStr); //product = mapper.readValue(productStr, Product.class); product = JSONObject.toJavaObject(parseObject, Product.class); System.out.println("product1:"+product); } ```
使用json-lib的JSONObject.toBean( )时碰到的日期属性转换的问题
今天碰到这样一个问题: <br />当前台以JSON格式向后台传递数据的时候,对于数据中的日期属性,无法正常转换为相应的Date属性。 <br />JSON数据是这样的: <br />{"birthday":"1980/01/01","name":"testname"} <br /> <br />我要转换成的类是这样的: <br /><pre name="code" class="java">public class Person { private String name; private Date birthday; public void setName(String name) { this.name = name; } public String getName() { return name; } public void setBirthday(Date birthday) { this.birthday = birthday; } public Date getBirthday() { return birthday; } } </pre> <br /> <br />转换的代码是这样的: <br /><pre name="code" class="java">JSONObject jsonPerson = JSONObject.fromObject(personData); //personaData是json串 Person person = (Person)JSONObject.toBean(jsonPerson, Person.class); </pre> <br /> <br />转换时并不抛出例外,而是在日志中打出以下警告信息: <br />Can't transform property 'birthday' from java.lang.String into java.util.Date. Will register a default Morpher <br /> <br />在网上搜了一遍,发现了很多关于进行相反方向转换时的帖子,即使用json-lib将bean转成json串时,日期属性的格式不符合习惯,后来好不容易才找到了这个问题的解决办法,虽然是抄别人的,但也发一贴为以后其他人更容易找到答案出点力,呵呵。废话少说,其实解决方法很简单,把转换代码改成这样: <br /><pre name="code" class="java">JSONObject jsonPerson = JSONObject.fromObject(personData); String[] dateFormats = new String[] {"yyyy/MM/dd"}; JSONUtils.getMorpherRegistry().registerMorpher(new DateMorpher(dateFormats)); Person person = (Person)JSONObject.toBean(jsonPerson, Person.class); </pre> <br /> <br />想深究原因的人可以参看json-lib和ezmorpher的相关文档。<br /><strong>问题补充:</strong><br />哈 <br />本来是发帖子的,怎么被系统自动转到问答栏目来了,估计是题目没起好,叫了个“。。。问题”,见笑了。
json 转换并只输出指定的属性
我用的是包是 : json-lib-2.3-jdk15.jar 现在有一个类要转换成jsonObject class Person{ private String name; private Integer id; private Integer age; } 转换成json的时候只需要 name 这一个属性. 我可以用jsonConfig排除其他两个属性 方法一, jsonConfig.registerPropertyExclusions(Person.class,new String[]{"age","id"}); 方法二, jsonConfig.setExcludes(new String[]{"age, id"}); 但是如果属性越多,我需要过滤的就越多, 而我却只需要其中的一个属性而已, 现在能不能 json 转换的时候, 只转换特定的字段. 不去过滤属性, 而是指定输出name. 大家有没有这种方法. 赐教.....
JAVA中如何将一个json形式的字符串转为json对象?
现在使用org.json,可以提供JSONObject和JSONArray对象。 但是对于形如“{"a":"b","c":"d"}”的字符串如何转换为一个json对象? 我查过资料,不少人建议使用json-lib。 我测试了一下,json-lib也提供以上两个对象,但是与原有的不兼容。方法也有差异。 例如原来的put()方法变成了add() 我的项目已经进入中后期,要是换了的话工作量会很大。 有没有人给点儿帮助?
关于Android获取JSON数据的问题,直接上代码了
打开URL后的数据:![图片说明](https://img-ask.csdn.net/upload/201506/25/1435221962_504928.png) 写的测试类: ``` package com.zb.json_text; import java.io.ByteArrayOutputStream; import java.io.IOException; import java.io.InputStream; import java.net.HttpURLConnection; import java.net.URL; import java.util.ArrayList; import java.util.Date; import java.util.HashMap; import java.util.List; import java.util.Map; import org.json.JSONArray; import org.json.JSONObject; import android.app.Activity; import android.os.Bundle; import android.util.Log; public class MainActivity extends Activity { private List<Map<String, String>> slist= new ArrayList<Map<String, String>>(); @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); String path="http://m.lalas.cn/help/all_1.html?format=json&size=5"; try { slist=getJSONObject(path); } catch (Exception e) { // TODO Auto-generated catch block e.printStackTrace(); } System.out.println("----------------------------listchangdu-------------------------------"+slist.size()); } public static List<Map<String, String>> getJSONObject(String path) throws Exception { System.out.println("---------------------------------------进来了-------------------------------------"); List<Map<String, String>> list = new ArrayList<Map<String, String>>(); Map<String, String> map =null; URL url=new URL(path); //利用HttpURLConnection对象,我们可以从网页中获取网页数据 HttpURLConnection conn=(HttpURLConnection) url.openConnection(); //单位为毫秒,设置超时时间为5秒 conn.setConnectTimeout(15*1000); //HttpURLConnection对象是通过HTTP协议请求path路径的,所以需要设置请求方式,可以不设置,因为默认为get conn.setRequestMethod("GET"); System.out.println("-------------------------conn.getResponseCode"+conn.getResponseCode()); if(conn.getResponseCode()==200){//判断请求码是否200,否则为失败 InputStream is=conn.getInputStream(); //获取输入流 byte[] data =readStream(is); //把输入流转换成字符串组 String json=new String(data); //把字符串组转换成字符串 //数据形式:{"total":2,"success":true,"arrayData":[{"id":1,"name":"小猪"},{"id":2,"name":"小猫"}]} JSONObject jsonObject=new JSONObject(json); //返回的数据形式是一个Object类型,所以可以直接转换成一个Object int total=jsonObject.getInt("count"); String keywords=jsonObject.getString("keywords"); System.out.println("========================================================================="); System.out.println("!!!!!!!!!!!!!!--------------"+total+"--------"+keywords); //里面有一个数组数据,可以用getJSONArray获取数组 JSONArray jsonArray=jsonObject.getJSONArray("data"); for(int i =1;i<jsonArray.length();i++){ JSONObject item=jsonArray.getJSONObject(i); //得到没个对象 int id =item.getInt("id"); String title=item.getString("title"); String description=item.getString("description"); int time =item.getInt("time"); map=new HashMap<String,String>(); map.put("id", id+""); map.put("title", title); map.put("description", description); map.put("time", time+""); list.add(map); } for (Map<String, String> list2 : list) { String id = list2.get("id"); String name = list2.get("description"); Log.i("abc", "id:" + id + " | name:" + name); } } return list; } private static byte[] readStream(InputStream inputStream) throws Exception { ByteArrayOutputStream bout = new ByteArrayOutputStream(); byte[] buffer = new byte[1024]; int len = 0; while ((len = inputStream.read(buffer)) != -1) { bout.write(buffer, 0, len); } bout.close(); inputStream.close(); return bout.toByteArray(); } } ``` AndroidManifest.xml里也加了权限: <uses-permission android:name="android.permission.INTERNET"/> 但是运行后是没有拿到任何数据的。调试在走到获取请求码(conn.getResponseCode())的时候就断了。为什么这里会报错呢?
String字符串转换成json格式并打印json数据。
执行到150行的时候,不抱错,也没有执行后面的语句,我想请教大神String转json格式然后存储到本地数据库,有什么办法。 package sql_conn; import java.awt.EventQueue; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import javax.swing.JButton; import javax.swing.JFrame; import javax.swing.JPanel; import java.io.BufferedReader; import java.io.BufferedWriter; import java.io.DataOutputStream; import java.io.IOException; import java.io.InputStreamReader; import java.io.OutputStreamWriter; import java.io.PrintWriter; import java.io.UnsupportedEncodingException; import java.net.MalformedURLException; import java.net.URL; import java.net.URLConnection; import java.net.URLEncoder; import javax.swing.*; import java.sql.Connection; import java.sql.DatabaseMetaData; import java.sql.DriverManager; import java.sql.PreparedStatement; import java.sql.ResultSet; import java.sql.ResultSetMetaData; import java.sql.SQLException; import java.sql.Statement; import java.sql.Types; import java.io.BufferedReader; import java.io.File; import java.io.FileOutputStream; import java.io.FileReader; import java.io.RandomAccessFile; import java.util.ArrayList; import java.util.List; import net.sf.json.JSONArray; import net.sf.json.JSONObject; public class java_sql extends JFrame{ JTextArea jtf1,jtf2; JButton yellowbutton,bluebutton,redbutton,okbutton; private static String test_url="jdbc:jtds:sqlserver://192.168.5.14:1433;DatabaseName=EUCP5"; private static String test_user = "admin123"; private static String test_pwd = "abcd_12345"; private static Connection con = null; public static void main(String[] args) { // TODO Auto-generated method stub EventQueue.invokeLater(new Runnable() { @Override public void run() { // TODO Auto-generated method stub java_sql frame=new java_sql(); frame.setVisible(true); } }); } public java_sql(){ this.setTitle("EUCP_数据库连接调试工具"); this.setSize(600,600); okbutton=new JButton("提交"); okbutton.setVisible(true); /*按钮添加button1Handler监听*/ okbutton.addActionListener(new Button1Handler()); //add buttons to panel buttonPanel=new JPanel(); buttonPanel.add(okbutton); this.add(buttonPanel); } private class Button1Handler implements ActionListener{ public void actionPerformed(ActionEvent e){ try { java_sql sms=new java_sql(); //jtf2.setText(okbutton.getActionCommand()); //JOptionPane.showMessageDialog(null, e.toString(), "alter", JOptionPane.ERROR_MESSAGE); sms.send_middle("177612309","验证码是48907"); } catch (Exception ex) { //JOptionPane.showMessageDialog(null, ex.toString(), "alter", JOptionPane.ERROR_MESSAGE); } } } private JPanel buttonPanel; public static int send_middle(String url, String param) throws MalformedURLException, UnsupportedEncodingException { String inputLine = ""; int value = -2; String con; DataOutputStream out = null; //InputStream in = null; String strUrl="http://eucpwx.mb345.com:443/AppApi/User/GetUserList?"; String strparam = "UserID=SU0126&GetType=1&NowID=&GetNum=100&Other=&SearchUserName="; try { System.out.println("start"); inputLine = sendPost(strUrl, strparam); //value = new Integer(inputLine).intValue(); System.out.println(inputLine); String str=String.valueOf(inputLine); //JSONObject st = JSONObject.fromObject(str); JSONObject jsonObject = new JSONObject().fromObject(str.toString()); System.out.println("可以"); Object data=jsonObject.get("UserID"); jsonObject = new JSONObject().fromObject(data.toString()); data=jsonObject.get("data"); jsonObject = new JSONObject().fromObject(data.toString()); data=jsonObject.get("value"); int value_k = Integer.parseInt(data.toString()); /* Statement stmt = null; String strSQL = ""; String driverName="com.microsoft.sqlserver.jdbc.SQLServerDriver"; String dbURL="jdbc:slserver://192.168.5.14:1433;DatabaseName=EnterpriseSMS_Play"; String userName="admin"; String userPwd="abcd"; Class.forName(driverName); Connection dbConn=DriverManager.getConnection(dbURL,userName,userPwd); String sql = ""; //注意java对SQL Server发送的SQL语句中表名需要用[]包围 System.out.println("SQL 开始"); for (int i = 0; i < jsonArr.size(); i++) { userid[i] = jsonArr.getJSONObject(i).getString("userid"); username[i] = jsonArr.getJSONObject(i).getString("username"); mobile[i] = jsonArr.getJSONObject(i).getString("mobile"); Avatar[i] = jsonArr.getJSONObject(i).getString("Avatar"); sql = "INSERT into user_bak (userid, username, mobile, Avatar) values('"+userid[i]+"','" +username[i]+"','"+mobile[i]+ "','"+Avatar[i]+"');"; System.out.println(sql.toString()); PreparedStatement statement = null; statement = dbConn.prepareStatement(sql); ResultSet rs = statement.executeQuery(); rs.close(); statement.close(); dbConn.close(); File f = new File("log.txt"); if (!f.exists()) { f.createNewFile(); } OutputStreamWriter write = new OutputStreamWriter(new FileOutputStream(f),"utf-8"); BufferedWriter writer=new BufferedWriter(write); writer.write(content); writer.close(); }*/ } catch (Exception e) { //System.out.println(e.toString()); value = -2; } //System.out.println(String.format("返回值:%d", value)); return value; } /** * 向指定 URL 发送POST方法的请求 * * @param url * 发送请求的 URL * @param param * 请求参数,请求参数应该是 name1=value1&name2=value2 的形式。 * @return 所代表远程资源的响应结果 */ public static String sendPost(String url, String param) { PrintWriter out = null; BufferedReader in = null; String result = ""; try { URL realUrl = new URL(url); // 打开和URL之间的连接 URLConnection conn = realUrl.openConnection(); // 设置通用的请求属性 conn.setRequestProperty("accept", "*/*"); conn.setRequestProperty("connection", "Keep-Alive"); conn.setRequestProperty("user-agent", "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1;SV1)"); // 发送POST请求必须设置如下两行 conn.setDoOutput(true); conn.setDoInput(true); // 获取URLConnection对象对应的输出流 out = new PrintWriter(conn.getOutputStream()); // 发送请求参数 out.print(param); // flush输出流的缓冲 out.flush(); // 定义BufferedReader输入流来读取URL的响应 in = new BufferedReader( new InputStreamReader(conn.getInputStream())); String line; while ((line = in.readLine()) != null) { //System.out.println(line); //String send_line =URLEncoder.encode(line.toString(), "utf-8"); //JOptionPane.showMessageDialog(null, line.toString(), "alter", JOptionPane.ERROR_MESSAGE); //System.out.println(line.toString()); result += line; //System.out.println(result.toString()); } } catch (Exception e) { //System.out.println("发送 POST 请求出现异常!" + e); e.printStackTrace(); } // 使用finally块来关闭输出流、输入流 finally { try { if (out != null) { out.close(); } if (in != null) { in.close(); } } catch (IOException ex) { ex.printStackTrace(); } } return result; } } ![图片说明](https://img-ask.csdn.net/upload/201709/04/1504509813_211448.png)
求一个json 转为 javabean list 小例子
问题描述: 我想把一个网址里面存的json数据,转换为javabean 的list形式;但是不会写代码,请求帮助。 思路不是很清晰,在网上找了很多例子看都没有看懂,希望有人给我一个例子,最好有注释。[code="java"] import java.util.ArrayList; import java.util.List; import net.sf.json.JSONObject; public class JsonTask { JSONObject jsonObject = new JSONObject(); String json = "http://www.aaa/iii/bbb.json"; Company company = new Company(); List<Company> list = new ArrayList(); list.add("id",company.get(id)); List.add("name",company.get(name)); } [/code] 以上是自己看完了写出来混乱的代码,希望有人指点一下~~~~,感激~~~
相见恨晚的超实用网站
相见恨晚的超实用网站 持续更新中。。。
Java学习的正确打开方式
在博主认为,对于入门级学习java的最佳学习方法莫过于视频+博客+书籍+总结,前三者博主将淋漓尽致地挥毫于这篇博客文章中,至于总结在于个人,实际上越到后面你会发现学习的最好方式就是阅读参考官方文档其次就是国内的书籍,博客次之,这又是一个层次了,这里暂时不提后面再谈。博主将为各位入门java保驾护航,各位只管冲鸭!!!上天是公平的,只要不辜负时间,时间自然不会辜负你。 何谓学习?博主所理解的学习,它是一个过程,是一个不断累积、不断沉淀、不断总结、善于传达自己的个人见解以及乐于分享的过程。
程序员必须掌握的核心算法有哪些?
由于我之前一直强调数据结构以及算法学习的重要性,所以就有一些读者经常问我,数据结构与算法应该要学习到哪个程度呢?,说实话,这个问题我不知道要怎么回答你,主要取决于你想学习到哪些程度,不过针对这个问题,我稍微总结一下我学过的算法知识点,以及我觉得值得学习的算法。这些算法与数据结构的学习大多数是零散的,并没有一本把他们全部覆盖的书籍。下面是我觉得值得学习的一些算法以及数据结构,当然,我也会整理一些看过...
大学四年自学走来,这些私藏的实用工具/学习网站我贡献出来了
大学四年,看课本是不可能一直看课本的了,对于学习,特别是自学,善于搜索网上的一些资源来辅助,还是非常有必要的,下面我就把这几年私藏的各种资源,网站贡献出来给你们。主要有:电子书搜索、实用工具、在线视频学习网站、非视频学习网站、软件下载、面试/求职必备网站。 注意:文中提到的所有资源,文末我都给你整理好了,你们只管拿去,如果觉得不错,转发、分享就是最大的支持了。 一、电子书搜索 对于大部分程序员...
linux系列之常用运维命令整理笔录
本博客记录工作中需要的linux运维命令,大学时候开始接触linux,会一些基本操作,可是都没有整理起来,加上是做开发,不做运维,有些命令忘记了,所以现在整理成博客,当然vi,文件操作等就不介绍了,慢慢积累一些其它拓展的命令,博客不定时更新 free -m 其中:m表示兆,也可以用g,注意都要小写 Men:表示物理内存统计 total:表示物理内存总数(total=used+free) use...
比特币原理详解
一、什么是比特币 比特币是一种电子货币,是一种基于密码学的货币,在2008年11月1日由中本聪发表比特币白皮书,文中提出了一种去中心化的电子记账系统,我们平时的电子现金是银行来记账,因为银行的背后是国家信用。去中心化电子记账系统是参与者共同记账。比特币可以防止主权危机、信用风险。其好处不多做赘述,这一层面介绍的文章很多,本文主要从更深层的技术原理角度进行介绍。 二、问题引入 假设现有4个人...
python 简易微信实现(注册登录+数据库存储+聊天+GUI+文件传输)
socket+tkinter详解+简易微信实现 历经多天的努力,查阅了许多大佬的博客后终于实现了一个简易的微信O(∩_∩)O~~ 简易数据库的实现 使用pands+CSV实现数据库框架搭建 import socket import threading from pandas import * import pymysql import csv # 创建DataFrame对象 # 存储用户数据的表(...
程序员接私活怎样防止做完了不给钱?
首先跟大家说明一点,我们做 IT 类的外包开发,是非标品开发,所以很有可能在开发过程中会有这样那样的需求修改,而这种需求修改很容易造成扯皮,进而影响到费用支付,甚至出现做完了项目收不到钱的情况。 那么,怎么保证自己的薪酬安全呢? 我们在开工前,一定要做好一些证据方面的准备(也就是“讨薪”的理论依据),这其中最重要的就是需求文档和验收标准。一定要让需求方提供这两个文档资料作为开发的基础。之后开发...
网页实现一个简单的音乐播放器(大佬别看。(⊙﹏⊙))
今天闲着无事,就想写点东西。然后听了下歌,就打算写个播放器。 于是乎用h5 audio的加上js简单的播放器完工了。 演示地点演示 html代码如下` music 这个年纪 七月的风 音乐 ` 然后就是css`*{ margin: 0; padding: 0; text-decoration: none; list-...
Python十大装B语法
Python 是一种代表简单思想的语言,其语法相对简单,很容易上手。不过,如果就此小视 Python 语法的精妙和深邃,那就大错特错了。本文精心筛选了最能展现 Python 语法之精妙的十个知识点,并附上详细的实例代码。如能在实战中融会贯通、灵活使用,必将使代码更为精炼、高效,同时也会极大提升代码B格,使之看上去更老练,读起来更优雅。
数据库优化 - SQL优化
以实际SQL入手,带你一步一步走上SQL优化之路!
2019年11月中国大陆编程语言排行榜
2019年11月2日,我统计了某招聘网站,获得有效程序员招聘数据9万条。针对招聘信息,提取编程语言关键字,并统计如下: 编程语言比例 rank pl_ percentage 1 java 33.62% 2 cpp 16.42% 3 c_sharp 12.82% 4 javascript 12.31% 5 python 7.93% 6 go 7.25% 7 p...
通俗易懂地给女朋友讲:线程池的内部原理
餐盘在灯光的照耀下格外晶莹洁白,女朋友拿起红酒杯轻轻地抿了一小口,对我说:“经常听你说线程池,到底线程池到底是个什么原理?”
《奇巧淫技》系列-python!!每天早上八点自动发送天气预报邮件到QQ邮箱
将代码部署服务器,每日早上定时获取到天气数据,并发送到邮箱。 也可以说是一个小型人工智障。 知识可以运用在不同地方,不一定非是天气预报。
经典算法(5)杨辉三角
杨辉三角 是经典算法,这篇博客对它的算法思想进行了讲解,并有完整的代码实现。
腾讯算法面试题:64匹马8个跑道需要多少轮才能选出最快的四匹?
昨天,有网友私信我,说去阿里面试,彻底的被打击到了。问了为什么网上大量使用ThreadLocal的源码都会加上private static?他被难住了,因为他从来都没有考虑过这个问题。无独有偶,今天笔者又发现有网友吐槽了一道腾讯的面试题,我们一起来看看。 腾讯算法面试题:64匹马8个跑道需要多少轮才能选出最快的四匹? 在互联网职场论坛,一名程序员发帖求助到。二面腾讯,其中一个算法题:64匹...
面试官:你连RESTful都不知道我怎么敢要你?
干货,2019 RESTful最贱实践
刷了几千道算法题,这些我私藏的刷题网站都在这里了!
遥想当年,机缘巧合入了 ACM 的坑,周边巨擘林立,从此过上了"天天被虐似死狗"的生活… 然而我是谁,我可是死狗中的战斗鸡,智力不够那刷题来凑,开始了夜以继日哼哧哼哧刷题的日子,从此"读题与提交齐飞, AC 与 WA 一色 ",我惊喜的发现被题虐既刺激又有快感,那一刻我泪流满面。这么好的事儿作为一个正直的人绝不能自己独享,经过激烈的颅内斗争,我决定把我私藏的十几个 T 的,阿不,十几个刷题网...
JavaScript 为什么能活到现在?
作者 | 司徒正美 责编 |郭芮 出品 | CSDN(ID:CSDNnews) JavaScript能发展到现在的程度已经经历不少的坎坷,早产带来的某些缺陷是永久性的,因此浏览器才有禁用JavaScript的选项。甚至在jQuery时代有人问出这样的问题,jQuery与JavaScript哪个快?在Babel.js出来之前,发明一门全新的语言代码代替JavaScript...
项目中的if else太多了,该怎么重构?
介绍 最近跟着公司的大佬开发了一款IM系统,类似QQ和微信哈,就是聊天软件。我们有一部分业务逻辑是这样的 if (msgType = "文本") { // dosomething } else if(msgType = "图片") { // doshomething } else if(msgType = "视频") { // doshomething } else { // doshom...
Nginx 原理和架构
Nginx 是一个免费的,开源的,高性能的 HTTP 服务器和反向代理,以及 IMAP / POP3 代理服务器。Nginx 以其高性能,稳定性,丰富的功能,简单的配置和低资源消耗而闻名。 Nginx 的整体架构 Nginx 里有一个 master 进程和多个 worker 进程。master 进程并不处理网络请求,主要负责调度工作进程:加载配置、启动工作进程及非停升级。worker 进程负责处...
致 Python 初学者
欢迎来到“Python进阶”专栏!来到这里的每一位同学,应该大致上学习了很多 Python 的基础知识,正在努力成长的过程中。在此期间,一定遇到了很多的困惑,对未来的学习方向感到迷茫。我非常理解你们所面临的处境。我从2007年开始接触 python 这门编程语言,从2009年开始单一使用 python 应对所有的开发工作,直至今天。回顾自己的学习过程,也曾经遇到过无数的困难,也曾经迷茫过、困惑过。开办这个专栏,正是为了帮助像我当年一样困惑的 Python 初学者走出困境、快速成长。希望我的经验能真正帮到你
Python 编程开发 实用经验和技巧
Python是一门很灵活的语言,也有很多实用的方法,有时候实现一个功能可以用多种方法实现,我这里总结了一些常用的方法和技巧,包括小数保留指定位小数、判断变量的数据类型、类方法@classmethod、制表符中文对齐、遍历字典、datetime.timedelta的使用等,会持续更新......
吐血推荐珍藏的Visual Studio Code插件
作为一名Java工程师,由于工作需要,最近一个月一直在写NodeJS,这种经历可以说是一部辛酸史了。好在有神器Visual Studio Code陪伴,让我的这段经历没有更加困难。眼看这段经历要告一段落了,今天就来给大家分享一下我常用的一些VSC的插件。 VSC的插件安装方法很简单,只需要点击左侧最下方的插件栏选项,然后就可以搜索你想要的插件了。 下面我们进入正题 Material Theme ...
“狗屁不通文章生成器”登顶GitHub热榜,分分钟写出万字形式主义大作
一、垃圾文字生成器介绍 最近在浏览GitHub的时候,发现了这样一个骨骼清奇的雷人项目,而且热度还特别高。 项目中文名:狗屁不通文章生成器 项目英文名:BullshitGenerator 根据作者的介绍,他是偶尔需要一些中文文字用于GUI开发时测试文本渲染,因此开发了这个废话生成器。但由于生成的废话实在是太过富于哲理,所以最近已经被小伙伴们给玩坏了。 他的文风可能是这样的: 你发现,...
程序员:我终于知道post和get的区别
是一个老生常谈的话题,然而随着不断的学习,对于以前的认识有很多误区,所以还是需要不断地总结的,学而时习之,不亦说乎
《程序人生》系列-这个程序员只用了20行代码就拿了冠军
你知道的越多,你不知道的越多 点赞再看,养成习惯GitHub上已经开源https://github.com/JavaFamily,有一线大厂面试点脑图,欢迎Star和完善 前言 这一期不算《吊打面试官》系列的,所有没前言我直接开始。 絮叨 本来应该是没有这期的,看过我上期的小伙伴应该是知道的嘛,双十一比较忙嘛,要值班又要去帮忙拍摄年会的视频素材,还得搞个程序员一天的Vlog,还要写BU...
开源并不是你认为的那些事
点击上方蓝字 关注我们开源之道导读所以 ————想要理清开源是什么?先要厘清开源不是什么,名正言顺是句中国的古代成语,概念本身的理解非常之重要。大部分生物多样性的起源,...
加快推动区块链技术和产业创新发展,2019可信区块链峰会在京召开
11月8日,由中国信息通信研究院、中国通信标准化协会、中国互联网协会、可信区块链推进计划联合主办,科技行者协办的2019可信区块链峰会将在北京悠唐皇冠假日酒店开幕。   区块链技术被认为是继蒸汽机、电力、互联网之后,下一代颠覆性的核心技术。如果说蒸汽机释放了人类的生产力,电力解决了人类基本的生活需求,互联网彻底改变了信息传递的方式,区块链作为构造信任的技术有重要的价值。   1...
Python 植物大战僵尸代码实现(2):植物卡片选择和种植
这篇文章要介绍的是: - 上方植物卡片栏的实现。 - 点击植物卡片,鼠标切换为植物图片。 - 鼠标移动时,判断当前在哪个方格中,并显示半透明的植物作为提示。
相关热词 基于c#波形控件 c# 十进制转十六进制 对文件aes加密vc# c#读取栈中所有的值 c# rsa256加密 好 学c# 还是c++ c# 和java的差距 c# curl网络框架 c# https证书请求 c# 中崎
立即提问