这个json数据用Gson怎么解析,我要每个类中的list

http://mobile.ximalaya.com/mobile/discovery/v3/recommends?channel=and-a1&device=android&includeActivity=true&includeSpecial=true&scale=2&version=4.3.98

数据太长,这个是接口。

8个回答

你知道类中包含了哪些实体然后不就可以解析了

通过对象来解析, 或者直接用jsonObject 拆开来。

实体类 discoveryColumns editorRecommendAlbums focusImages specialColumn 四个类

里面写一个"自己命名"类 再加一个List<自己命名> list 直接Gson就行了

你那个自己命名的类里面加上id title url这些变量就可以了

那个实体类不是让你建4个类,是一个类里面有4个

一个解析类 有个specialColumn类 里面有个arraylist 如果studio 直接用插件创建实体类

GsonFormat插件

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
请问如果利用gson解析这种复合格式的json数据?

初学java,在与别人一起做项目时 他发送过来的json格式是{"data":"", "info":"", "status":""} 其中,info和status的类型固定是字符和数字 但data里面的内容是类型不定的list 请问要怎么解决这个data的解析? 重点是list的类型不定!!! 不可能每种类型就又多写一个类去解析吧

解析json对象数组,拿到每个对象属性值的方法

写一个公共方法,传List<class>对象数组进来,能解析出对象的指定属性值,由于对json这方面不是很熟,求大神帮帮忙。![图片说明](https://img-ask.csdn.net/upload/201710/28/1509189822_294593.png)

如何将String类型的Json样的数据,取出其中key和所对应的value,

![图片说明](https://img-ask.csdn.net/upload/201706/19/1497841802_352755.png) 比如说这样的数据。。list类型的redis里面存储的是Json样式的数据。 后台取到这个redis。然后遍历list。取得每一个string类型的数据。 ![图片说明](https://img-ask.csdn.net/upload/201706/19/1497841983_277816.png) 然后我想对这个取出的String类型的list进行分割,取出每 一个key所对应的value。 这里不太清楚 用什么方法。取值 。求大腿!

JAVA如何获取本地.json文件并遍历

因为开发的原因,后期要测试,就在网上抓取了一些商品数据,并组成了json文件.然而我在从本地读取并遍历的时候,遇到了点问题.无法直接遍历,报错Exception in thread "main" com.google.gson.JsonSyntaxException: com.google.gson.stream.MalformedJsonException: Use JsonReader.setLenient(true) to accept malformed JSON at line 2 column 2 path $ at com.google.gson.JsonParser.parse(JsonParser.java:65) at com.google.gson.JsonParser.parse(JsonParser.java:45) at com.enation.framework.util.JsonUtil.parseJsonArray(JsonUtil.java:103) at com.enation.framework.util.JsonUtil.toList(JsonUtil.java:43) at com.enation.app.b2b2c.front.api.goods.InsertGoods.main(InsertGoods.java:136) Caused by: com.google.gson.stream.MalformedJsonException: Use JsonReader.setLenient(true) to accept malformed JSON at line 2 column 2 path $ at com.google.gson.stream.JsonReader.syntaxError(JsonReader.java:1574) at com.google.gson.stream.JsonReader.checkLenient(JsonReader.java:1423) at com.google.gson.stream.JsonReader.doPeek(JsonReader.java:546) at com.google.gson.stream.JsonReader.peek(JsonReader.java:429) at com.google.gson.JsonParser.parse(JsonParser.java:60) ... 4 more ``` ```因为json文件中有特别多的数据,哪位大神有好点的方法,特别是有代码的话更好,万分感谢!

Android解析JSON数组,如果里面有两个数组,要怎么处理

项目中遇到服务器给的文档里面有两个数组 这样 { "code":200, "message":"调用成功", "data":{ "mem_message_records":[ { "message_disease_typeid":"1", "message_disease_type":"心血管系统" }, { "message_disease_typeid":"2", "message_disease_type":"外围血管疾病" }, { "message_disease_typeid":"3", "message_disease_type":"脑血管疾病" }, { "message_disease_typeid":"4", "message_disease_type":"肺部疾病" }, { "message_disease_typeid":"5", "message_disease_type":"代谢疾病" }, { "message_disease_typeid":"6", "message_disease_type":"周围神经疾病" }, { "message_disease_typeid":"7", "message_disease_type":"其他疾病" } ], "mem_message_recordss":[ [ { "message_diseaseid":"1", "message_disease":"冠状动脉疾病" }, { "message_diseaseid":"2", "message_disease":"心绞痛" }, { "message_diseaseid":"3", "message_disease":"心肌梗死" }, { "message_diseaseid":"4", "message_disease":"冠状动脉血运重建" }, { "message_diseaseid":"5", "message_disease":"充血性心力衰竭" } ], [ { "message_diseaseid":"6", "message_disease":"闭塞性周围动脉粥样硬化" }, { "message_diseaseid":"7", "message_disease":"血栓行静脉炎" } ], [ { "message_diseaseid":"8", "message_disease":"脑血栓" }, { "message_diseaseid":"9", "message_disease":"短暂性脑供血不足" }, { "message_diseaseid":"10", "message_disease":"脑出血" } ], [ { "message_diseaseid":"11", "message_disease":"慢性支气管炎" }, { "message_diseaseid":"12", "message_disease":"慢性阻塞性肺病" }, { "message_diseaseid":"13", "message_disease":"支气管哮喘" }, { "message_diseaseid":"14", "message_disease":"间质性肺病" }, { "message_diseaseid":"15", "message_disease":"囊性肺纤维化" } ], [ { "message_diseaseid":"16", "message_disease":"1型糖尿病" }, { "message_diseaseid":"17", "message_disease":"2型糖尿病" }, { "message_diseaseid":"18", "message_disease":"糖尿病肾病" } ], [ { "message_diseaseid":"19", "message_disease":"糖尿病性周围精神病" }, { "message_diseaseid":"20", "message_disease":"自主神经性病变" } ], [ { "message_diseaseid":"21", "message_disease":"高血压" }, { "message_diseaseid":"22", "message_disease":"视网膜病变" }, { "message_diseaseid":"23", "message_disease":"恶性肿瘤" }, { "message_diseaseid":"24", "message_disease":"脑卒中" }, { "message_diseaseid":"25", "message_disease":"重性精神疾病" }, { "message_diseaseid":"26", "message_disease":"结核病" }, { "message_diseaseid":"27", "message_disease":"肝炎" }, { "message_diseaseid":"28", "message_disease":"先天畸形" }, { "message_diseaseid":"29", "message_disease":"其它" } ] ] } } 下面是我构建的实体类 这是最里层的两个, //疾病名称 public class JiBingdataname { private String message_diseaseid; private String message_disease; } //疾病类型 public class JiBingdata { private String message_disease_type; private String message_disease_typeid; } //外一层 public class JiBinglist { private List<JiBingdata> mem_message_records; private List<JiBingdataname> mem_message_recordss; } //最外层 public class JiBingbean { private String code; private String message; private JiBinglist data; } 下面是我的解析代码 //解析JSON数据 private class Mythread extends Thread { @Override public void run() { System.out.println("....启动线程"); //网络请求路径 String path = HttpInfo.PATH + HttpInfo.GET_JIBINGLIST + HttpInfo.ID; String jsonString = HttpUtils.getJsonContent(path); Gson gson = new Gson(); System.out.println("------------------------" + path); //解析json数据 jiBingbean = gson.fromJson(jsonString, JiBingbean.class); System.out.println("....启动线程" + jiBingbean); //解析成功后发送msg给UI主线程 Message msg = new Message(); msg.what = 101; myHandler.sendMessage(msg); } } 但是出现这样的问题 java.lang.IllegalStateException: Expected BEGIN_OBJECT but was BEGIN_ARRAY at line 1 column 520 path $.data.mem_message_recordss[0] logcat日志错误指向这一行, jiBingbean = gson.fromJson(jsonString, JiBingbean.class); 请教一下各位大神,是哪里处理的不好

怎么把从数据库查询的数据放到数组中

在数据库中查询数据,有两个属性,time和io,数据转换成gson.toJson类型,怎么把这两个属性的数据分别放到两个对应数组中![图片说明](https://img-ask.csdn.net/upload/201607/18/1468826877_959068.png)

关于ajax发送几次请求后不再发送的问题

本人今天在跟视频做小项目,遇到一个比较棘手的问题贴出来希望大神能解答。 关于一个商城商品分类列表的目录问题, 这是前端发送的ajax请求,目的是获取数据库中的分类列表,回调函数是处理ul列表 ```<script type="text/javascript"> $(function(){ var content = ""; $.post( "${pageContext.request.contextPath}/categoryList", function(data){ for(var i=0;i<data.length;i++){ content += "<li><a href='#'>"+data[i].cname+"</a></li>"; } $("#category").html(content); }, "json" ); }); </script> ``` `` Jedis jedis = JedisPoolUtils.getJedis(); String list = jedis.get("category_list"); //判断是否为空 if(list == null){ //查询mysql数据库 ProductService service = new ProductService(); List<Category> list_category = null; try { list_category = service.findCategoryList(); } catch (SQLException e) { // TODO Auto-generated catch block e.printStackTrace(); } //将获得的结果转化为json格式 Gson gson = new Gson(); list = gson.toJson(list_category); //将数据写入redis jedis.set("category_list", list); } //将数据返回前台(注意转换编码) response.setContentType("text/html;charset=utf-8"); response.getWriter().write(list); ``` 这是后端对于请求的处理,service和dao不再贴了,验证后没有问题,如代码所示,是先查找redis数据库中有无信息,再决定是否去mysql中查找, 第一次运行成功 如图![图片说明](https://img-ask.csdn.net/upload/201709/01/1504248552_91216.png) 刷新网页八次后![图片说明](https://img-ask.csdn.net/upload/201709/01/1504248591_140319.png) 打断点发现每到第八次以后,页面都不再发送ajax请求,导致写入列表的数据为空,与cookie无关,与浏览器版本无关,(已经尝试过)可能与redis数据库有关??不知道求大神解答,在后端打的断点第八次以后就会跳过。。。说明ajax请求第八次以后就到不了servlet了。。。

ViewPager+Fragment+ListView启动后第一个页面是空白,怎么改进解决?

ViewPager+Fragment(4个)+ListView启动后第一个页面是空白。 首先说明的是当listview里面的adapter不用callback的方法获取json的时候,一切都是正常的。 当4个fragment中只有一个listview的时候,用callback方法也是正常的,但是两个fragement中都有listview的时候,比如fragment1 & fragment2中各有一个listview,然后每个都callback就不行了,但是滑动一下,有时就可以了。 先说目录结构:MainActivity ,fragmentone,fragmentone2... 上代码: package com.example.viewpagerdemo; import java.util.ArrayList; import android.content.Context; import android.os.Bundle; import android.support.v4.app.Fragment; import android.support.v4.app.FragmentActivity; import android.support.v4.view.ViewPager; import android.support.v4.view.ViewPager.OnPageChangeListener; import android.view.View; import android.view.View.OnClickListener; import android.view.Window; import android.widget.Button; import android.widget.Toast; import com.example.viewpagerdemo.myadapter.MyFragmentPagerAdapter; public class MainActivity extends FragmentActivity implements OnClickListener, OnPageChangeListener { private ViewPager mViewPager; private Button bt_list1, bt_list2, bt_list3, bt_list4; private ArrayList<Fragment> list = null; private Context mContext; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); requestWindowFeature(Window.FEATURE_NO_TITLE); setContentView(R.layout.mainwin); mContext=MainActivity.this; initView(); initEvent(); } private void initView() { mViewPager = (ViewPager) findViewById(R.id.vpager); bt_list1 = (Button) findViewById(R.id.button1); bt_list2 = (Button) findViewById(R.id.button2); bt_list3 = (Button) findViewById(R.id.button3); bt_list4 = (Button) findViewById(R.id.button4); fragmentone fg1 = new fragmentone(); fragmenttwo fg2 = new fragmenttwo(); fragmentthree fg3 = new fragmentthree(); fragmentfour fg4 = new fragmentfour(); list = new ArrayList<Fragment>(); list.add(fg1); list.add(fg2); list.add(fg3); list.add(fg4); mViewPager.setAdapter(new MyFragmentPagerAdapter( getSupportFragmentManager(), list)); } private void initEvent() { mViewPager.setCurrentItem(0); bt_list1.setOnClickListener(this); bt_list2.setOnClickListener(this); bt_list3.setOnClickListener(this); bt_list4.setOnClickListener(this); mViewPager.setOnPageChangeListener(this); } @Override public void onClick(View v) { // TODO Auto-generated method stub switch (v.getId()) { case R.id.button1: mViewPager.setCurrentItem(0); Toast.makeText(mContext, "当前选择:1",Toast.LENGTH_SHORT).show(); break; case R.id.button2: mViewPager.setCurrentItem(1); Toast.makeText(mContext, "当前选择:2",Toast.LENGTH_SHORT).show(); break; case R.id.button3: mViewPager.setCurrentItem(2); Toast.makeText(mContext, "当前选择:3",Toast.LENGTH_SHORT).show(); break; case R.id.button4: mViewPager.setCurrentItem(3); Toast.makeText(mContext, "当前选择:4",Toast.LENGTH_SHORT).show(); break; } } @Override protected void onPause() { // TODO Auto-generated method stub super.onPause(); } @Override protected void onResume() { // TODO Auto-generated method stub mViewPager.setCurrentItem(1); mViewPager.setCurrentItem(0); super.onResume(); } @Override public void onPageScrollStateChanged(int state) { // TODO Auto-generated method stub if (state==2) { Toast.makeText(mContext, "当前选择:"+(mViewPager.getCurrentItem()+1),Toast.LENGTH_SHORT).show(); } } @Override public void onPageScrolled(int arg0, float arg1, int arg2) { // TODO Auto-generated method stub } @Override public void onPageSelected(int arg0) { // TODO Auto-generated method stub //Toast.makeText(mContext, "当前选择:"+mViewPager.getCurrentItem(),Toast.LENGTH_SHORT); } } fragmentone: package com.example.viewpagerdemo; import java.lang.reflect.Type; import java.util.ArrayList; import java.util.List; import org.apache.http.NameValuePair; import org.apache.http.message.BasicNameValuePair; import android.content.Context; import android.os.Bundle; import android.support.v4.app.Fragment; import android.util.Log; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; import android.widget.ListView; import android.widget.Toast; import com.example.viewpagerdemo.myCallBack.HttpUtil; import com.example.viewpagerdemo.myCallBack.ResultCallback; import com.example.viewpagerdemo.myadapter.ListAdapterOne; import com.example.viewpagerdemo.mybean.BaseBean; import com.example.viewpagerdemo.mybean.BeanOneArrayList; import com.example.viewpagerdemo.mybean.ListBeanOne; import com.google.gson.Gson; import com.google.gson.reflect.TypeToken; /** * fragment 1 * * @author dy * */ public class fragmentone extends Fragment { private Context mContext; private View viewOne; private ListView mListViewOne; private List<ListBeanOne> allDataOne; private ListAdapterOne oneAdapter; private ResultCallback callback = new ResultCallback() { @Override public void getReslt(String result) { // TODO Auto-generated method stub BaseBean b = HttpUtil.getData(mContext, result, "", ""); if (b.getResponsecode() == 1) { Type type = new TypeToken<BeanOneArrayList>() { }.getType(); Gson gson = new Gson(); BeanOneArrayList json = gson.fromJson(result, type); allDataOne = json.getData(); if (allDataOne.size() > 0) { oneAdapter = new ListAdapterOne(mContext, allDataOne); mListViewOne.setAdapter(oneAdapter); /* * Message message = new Message(); message.what=1; * mHandler.sendMessage(message); */ } else { Log.i("tag", "No Data"); } } } }; @Override public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { if (viewOne != null) { ViewGroup parentViewGroup = (ViewGroup) viewOne.getParent(); if (parentViewGroup != null) { parentViewGroup.removeAllViewsInLayout(); } } else { viewOne = inflater.inflate(R.layout.fg1, container, false); } initView(); initEvent(); return viewOne; } private void initView() { mContext = this.getActivity(); mListViewOne = (ListView) viewOne.findViewById(R.id.listView1); } private void initEvent() { String JsonURL = AppConst.ListURL1; List<NameValuePair> p = new ArrayList<NameValuePair>(); p.add(new BasicNameValuePair("action", "1")); HttpUtil.doPost(JsonURL, p, callback); } } fragmenttwo: package com.example.viewpagerdemo; import java.lang.reflect.Type; import java.util.ArrayList; import java.util.List; import org.apache.http.NameValuePair; import org.apache.http.message.BasicNameValuePair; import android.content.Context; import android.os.Bundle; import android.support.v4.app.Fragment; import android.util.Log; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; import android.widget.ListView; import com.example.viewpagerdemo.myCallBack.HttpUtil; import com.example.viewpagerdemo.myCallBack.ResultCallback; import com.example.viewpagerdemo.myadapter.ListAdapterOne; import com.example.viewpagerdemo.myadapter.ListAdapterTwo; import com.example.viewpagerdemo.mybean.BaseBean; import com.example.viewpagerdemo.mybean.BeanTwoArrayList; import com.example.viewpagerdemo.mybean.ListBeanTwo; import com.google.gson.Gson; import com.google.gson.reflect.TypeToken; /** * fragment 2 * * @author dy * */ public class fragmenttwo extends Fragment { private Context mContext; private View viewTwo; private ListView mListViewTwo; private List<ListBeanTwo> allDataTwo; private ListAdapterTwo twoAdapter; private ResultCallback callback = new ResultCallback() { @Override public void getReslt(String result) { // TODO Auto-generated method stub BaseBean b = HttpUtil.getData(mContext, result, "", ""); if (b.getResponsecode() == 1) { Type type = new TypeToken<BeanTwoArrayList>() { }.getType(); Gson gson = new Gson(); BeanTwoArrayList json = gson.fromJson(result, type); allDataTwo = json.getData(); if (allDataTwo.size() > 0) { twoAdapter = new ListAdapterTwo(mContext, allDataTwo); mListViewTwo.setAdapter(twoAdapter); /* * Message message = new Message(); message.what=1; * mHandler.sendMessage(message); */ } else { Log.i("tag", "No Data"); } } } }; @Override public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { if (viewTwo != null) { ViewGroup parentViewGroup = (ViewGroup) viewTwo.getParent(); if (parentViewGroup != null) { parentViewGroup.removeAllViewsInLayout(); } } else { viewTwo = inflater.inflate(R.layout.fg2, container, false); } initView(); initEvent(); return viewTwo; } private void initView() { mContext = this.getActivity(); mListViewTwo = (ListView) viewTwo.findViewById(R.id.listView2); } private void initEvent() { String JsonURL = AppConst.ListURL1; List<NameValuePair> p = new ArrayList<NameValuePair>(); p.add(new BasicNameValuePair("action", "2")); HttpUtil.doPost(JsonURL, p, callback); } } MyFragmentPagerAdapter: package com.example.viewpagerdemo.myadapter; import java.util.ArrayList; import android.support.v4.app.Fragment; import android.support.v4.app.FragmentManager; import android.support.v4.app.FragmentPagerAdapter; public class MyFragmentPagerAdapter extends FragmentPagerAdapter { private ArrayList<Fragment> list; public MyFragmentPagerAdapter(FragmentManager fm) { super(fm); } public MyFragmentPagerAdapter(FragmentManager fm, ArrayList<Fragment> list) { super(fm); this.list = list; } @Override public Fragment getItem(int arg0) { // TODO Auto-generated method stub return list.get(arg0); } @Override public int getCount() { // TODO Auto-generated method stub return list.size(); } } ``` ``` 其他的代码都是类似的,就不发了。 ``` ```

求大神指点,告诉我为啥会这样

我从数据库里查出一个list,用Gson 转换成Json字符串,字符串里每个value的值都只有一个首字符,表示不解,求大神指点,谢谢谢谢谢谢!! ![图片说明](https://img-ask.csdn.net/upload/201610/14/1476449048_536919.png)

大学四年自学走来,这些私藏的实用工具/学习网站我贡献出来了

大学四年,看课本是不可能一直看课本的了,对于学习,特别是自学,善于搜索网上的一些资源来辅助,还是非常有必要的,下面我就把这几年私藏的各种资源,网站贡献出来给你们。主要有:电子书搜索、实用工具、在线视频学习网站、非视频学习网站、软件下载、面试/求职必备网站。 注意:文中提到的所有资源,文末我都给你整理好了,你们只管拿去,如果觉得不错,转发、分享就是最大的支持了。 一、电子书搜索 对于大部分程序员...

在中国程序员是青春饭吗?

今年,我也32了 ,为了不给大家误导,咨询了猎头、圈内好友,以及年过35岁的几位老程序员……舍了老脸去揭人家伤疤……希望能给大家以帮助,记得帮我点赞哦。 目录: 你以为的人生 一次又一次的伤害 猎头界的真相 如何应对互联网行业的「中年危机」 一、你以为的人生 刚入行时,拿着傲人的工资,想着好好干,以为我们的人生是这样的: 等真到了那一天,你会发现,你的人生很可能是这样的: ...

程序员请照顾好自己,周末病魔差点一套带走我。

程序员在一个周末的时间,得了重病,差点当场去世,还好及时挽救回来了。

ArrayList源码分析(入门篇)

ArrayList源码分析 前言: 写这篇博客的主要原因是,在我上一次参加千牵科技Java实习生面试时,有被面试官问到ArrayList为什么查找的速度较快,插入和删除的速度较慢?当时我回答得不好,很大的一部分原因是因为我没有阅读过ArrayList源码,虽然最后收到Offer了,但我拒绝了,打算寒假学得再深入些再广泛些,下学期开学后再去投递其他更好的公司。为了更加深入理解ArrayList,也为

我以为我学懂了数据结构,直到看了这个导图才发现,我错了

数据结构与算法思维导图

String s = new String(" a ") 到底产生几个对象?

老生常谈的一个梗,到2020了还在争论,你们一天天的,哎哎哎,我不是针对你一个,我是说在座的各位都是人才! 上图红色的这3个箭头,对于通过new产生一个字符串(”宜春”)时,会先去常量池中查找是否已经有了”宜春”对象,如果没有则在常量池中创建一个此字符串对象,然后堆中再创建一个常量池中此”宜春”对象的拷贝对象。 也就是说准确答案是产生了一个或两个对象,如果常量池中原来没有 ”宜春” ,就是两个。...

技术大佬:我去,你写的 switch 语句也太老土了吧

昨天早上通过远程的方式 review 了两名新来同事的代码,大部分代码都写得很漂亮,严谨的同时注释也很到位,这令我非常满意。但当我看到他们当中有一个人写的 switch 语句时,还是忍不住破口大骂:“我擦,小王,你丫写的 switch 语句也太老土了吧!” 来看看小王写的代码吧,看完不要骂我装逼啊。 private static String createPlayer(PlayerTypes p...

和黑客斗争的 6 天!

互联网公司工作,很难避免不和黑客们打交道,我呆过的两家互联网公司,几乎每月每天每分钟都有黑客在公司网站上扫描。有的是寻找 Sql 注入的缺口,有的是寻找线上服务器可能存在的漏洞,大部分都...

讲一个程序员如何副业月赚三万的真实故事

loonggg读完需要3分钟速读仅需 1 分钟大家好,我是你们的校长。我之前讲过,这年头,只要肯动脑,肯行动,程序员凭借自己的技术,赚钱的方式还是有很多种的。仅仅靠在公司出卖自己的劳动时...

上班一个月,后悔当初着急入职的选择了

最近有个老铁,告诉我说,上班一个月,后悔当初着急入职现在公司了。他之前在美图做手机研发,今年美图那边今年也有一波组织优化调整,他是其中一个,在协商离职后,当时捉急找工作上班,因为有房贷供着,不能没有收入来源。所以匆忙选了一家公司,实际上是一个大型外包公司,主要派遣给其他手机厂商做外包项目。**当时承诺待遇还不错,所以就立马入职去上班了。但是后面入职后,发现薪酬待遇这块并不是HR所说那样,那个HR自...

女程序员,为什么比男程序员少???

昨天看到一档综艺节目,讨论了两个话题:(1)中国学生的数学成绩,平均下来看,会比国外好?为什么?(2)男生的数学成绩,平均下来看,会比女生好?为什么?同时,我又联想到了一个技术圈经常讨...

副业收入是我做程序媛的3倍,工作外的B面人生是怎样的?

提到“程序员”,多数人脑海里首先想到的大约是:为人木讷、薪水超高、工作枯燥…… 然而,当离开工作岗位,撕去层层标签,脱下“程序员”这身外套,有的人生动又有趣,马上展现出了完全不同的A/B面人生! 不论是简单的爱好,还是正经的副业,他们都干得同样出色。偶尔,还能和程序员的特质结合,产生奇妙的“化学反应”。 @Charlotte:平日素颜示人,周末美妆博主 大家都以为程序媛也个个不修边幅,但我们也许...

MySQL数据库面试题(2020最新版)

文章目录数据库基础知识为什么要使用数据库什么是SQL?什么是MySQL?数据库三大范式是什么mysql有关权限的表都有哪几个MySQL的binlog有有几种录入格式?分别有什么区别?数据类型mysql有哪些数据类型引擎MySQL存储引擎MyISAM与InnoDB区别MyISAM索引与InnoDB索引的区别?InnoDB引擎的4大特性存储引擎选择索引什么是索引?索引有哪些优缺点?索引使用场景(重点)...

如果你是老板,你会不会踢了这样的员工?

有个好朋友ZS,是技术总监,昨天问我:“有一个老下属,跟了我很多年,做事勤勤恳恳,主动性也很好。但随着公司的发展,他的进步速度,跟不上团队的步伐了,有点...

我入职阿里后,才知道原来简历这么写

私下里,有不少读者问我:“二哥,如何才能写出一份专业的技术简历呢?我总感觉自己写的简历太烂了,所以投了无数份,都石沉大海了。”说实话,我自己好多年没有写过简历了,但我认识的一个同行,他在阿里,给我说了一些他当年写简历的方法论,我感觉太牛逼了,实在是忍不住,就分享了出来,希望能够帮助到你。 01、简历的本质 作为简历的撰写者,你必须要搞清楚一点,简历的本质是什么,它就是为了来销售你的价值主张的。往深...

玩转springboot启动banner定义所得

最近接手了一个springboot项目,不是不熟悉这个框架,启动时打印的信息吸引了我。 这不是我熟悉的常用springboot的打印信息啊,我打开自己的项目: 还真是的,不用默认的感觉也挺高大上的。一时兴起,就去研究了一下源代码,还正是有些收获,稍后我会总结一下。正常情况下做为一个老程序员,是不会对这种小儿科感兴趣的,不就是一个控制台打印嘛。哈哈! 于是出于最初的好奇,研究了项目的源代码。看到

带了6个月的徒弟当了面试官,而身为高级工程师的我天天修Bug......

即将毕业的应届毕业生一枚,现在只拿到了两家offer,但最近听到一些消息,其中一个offer,我这个组据说客户很少,很有可能整组被裁掉。 想问大家: 如果我刚入职这个组就被裁了怎么办呢? 大家都是什么时候知道自己要被裁了的? 面试软技能指导: BQ/Project/Resume 试听内容: 除了刷题,还有哪些技能是拿到offer不可或缺的要素 如何提升面试软实力:简历, 行为面试,沟通能...

离职半年了,老东家又发 offer,回不回?

有小伙伴问松哥这个问题,他在上海某公司,在离职了几个月后,前公司的领导联系到他,希望他能够返聘回去,他很纠结要不要回去? 俗话说好马不吃回头草,但是这个小伙伴既然感到纠结了,我觉得至少说明了两个问题:1.曾经的公司还不错;2.现在的日子也不是很如意。否则应该就不会纠结了。 老实说,松哥之前也有过类似的经历,今天就来和小伙伴们聊聊回头草到底吃不吃。 首先一个基本观点,就是离职了也没必要和老东家弄的苦...

男生更看重女生的身材脸蛋,还是思想?

往往,我们看不进去大段大段的逻辑。深刻的哲理,往往短而精悍,一阵见血。问:产品经理挺漂亮的,有点心动,但不知道合不合得来。男生更看重女生的身材脸蛋,还是...

为什么程序员做外包会被瞧不起?

二哥,有个事想询问下您的意见,您觉得应届生值得去外包吗?公司虽然挺大的,中xx,但待遇感觉挺低,马上要报到,挺纠结的。

当HR压你价,说你只值7K,你该怎么回答?

当HR压你价,说你只值7K时,你可以流畅地回答,记住,是流畅,不能犹豫。 礼貌地说:“7K是吗?了解了。嗯~其实我对贵司的面试官印象很好。只不过,现在我的手头上已经有一份11K的offer。来面试,主要也是自己对贵司挺有兴趣的,所以过来看看……”(未完) 这段话主要是陪HR互诈的同时,从公司兴趣,公司职员印象上,都给予对方正面的肯定,既能提升HR的好感度,又能让谈判气氛融洽,为后面的发挥留足空间。...

面试:第十六章:Java中级开发(16k)

HashMap底层实现原理,红黑树,B+树,B树的结构原理 Spring的AOP和IOC是什么?它们常见的使用场景有哪些?Spring事务,事务的属性,传播行为,数据库隔离级别 Spring和SpringMVC,MyBatis以及SpringBoot的注解分别有哪些?SpringMVC的工作原理,SpringBoot框架的优点,MyBatis框架的优点 SpringCould组件有哪些,他们...

面试阿里p7,被按在地上摩擦,鬼知道我经历了什么?

面试阿里p7被问到的问题(当时我只知道第一个):@Conditional是做什么的?@Conditional多个条件是什么逻辑关系?条件判断在什么时候执...

终于懂了TCP和UDP协议区别

终于懂了TCP和UDP协议区别

你打算用Java 8一辈子都不打算升级到Java 14,真香

我们程序员应该抱着尝鲜、猎奇的心态,否则就容易固步自封,技术停滞不前。

无代码时代来临,程序员如何保住饭碗?

编程语言层出不穷,从最初的机器语言到如今2500种以上的高级语言,程序员们大呼“学到头秃”。程序员一边面临编程语言不断推陈出新,一边面临由于许多代码已存在,程序员编写新应用程序时存在重复“搬砖”的现象。 无代码/低代码编程应运而生。无代码/低代码是一种创建应用的方法,它可以让开发者使用最少的编码知识来快速开发应用程序。开发者通过图形界面中,可视化建模来组装和配置应用程序。这样一来,开发者直...

面试了一个 31 岁程序员,让我有所触动,30岁以上的程序员该何去何从?

最近面试了一个31岁8年经验的程序猿,让我有点感慨,大龄程序猿该何去何从。

大三实习生,字节跳动面经分享,已拿Offer

说实话,自己的算法,我一个不会,太难了吧

程序员垃圾简历长什么样?

已经连续五年参加大厂校招、社招的技术面试工作,简历看的不下于万份 这篇文章会用实例告诉你,什么是差的程序员简历! 疫情快要结束了,各个公司也都开始春招了,作为即将红遍大江南北的新晋UP主,那当然要为小伙伴们做点事(手动狗头)。 就在公众号里公开征简历,义务帮大家看,并一一点评。《启舰:春招在即,义务帮大家看看简历吧》 一石激起千层浪,三天收到两百多封简历。 花光了两个星期的所有空闲时...

《经典算法案例》01-08:如何使用质数设计扫雷(Minesweeper)游戏

我们都玩过Windows操作系统中的经典游戏扫雷(Minesweeper),如果把质数当作一颗雷,那么,表格中红色的数字哪些是雷(质数)?您能找出多少个呢?文中用列表的方式罗列了10000以内的自然数、质数(素数),6的倍数等,方便大家观察质数的分布规律及特性,以便对算法求解有指导意义。另外,判断质数是初学算法,理解算法重要性的一个非常好的案例。

《Oracle Java SE编程自学与面试指南》最佳学习路线图(2020最新版)

正确选择比瞎努力更重要!

Java岗开发3年,公司临时抽查算法,离职后这几题我记一辈子

前几天我们公司做了一件蠢事,非常非常愚蠢的事情。我原以为从学校出来之后,除了找工作有测试外,不会有任何与考试有关的事儿。 但是,天有不测风云,公司技术总监、人事总监两位大佬突然降临到我们事业线,叫上我老大,给我们组织了一场别开生面的“考试”。 那是一个风和日丽的下午,我翘着二郎腿,左手端着一杯卡布奇诺,右手抓着我的罗技鼠标,滚动着轮轴,穿梭在头条热点之间。 “淡黄的长裙~蓬松的头发...

面试官:你连SSO都不懂,就别来面试了

大厂竟然要考我SSO,卧槽。

终于,月薪过5万了!

来看几个问题想不想月薪超过5万?想不想进入公司架构组?想不想成为项目组的负责人?想不想成为spring的高手,超越99%的对手?那么本文内容是你必须要掌握的。本文主要详解bean的生命...

我说我懂多线程,面试官立马给我发了offer

不小心拿了几个offer,有点烦

爬虫(九十七)不爬妹子图的爬虫不是一只好爬虫

不爬妹子图的爬虫不是一只好爬虫。----鲁迅还是一样,我们在爬取妹子图片的时候,首先要分析一下 DOM这里的img是就封面,如果只抓取封面的话,到这就可以了,但是我们取的是所有图片,所...

自从喜欢上了B站这12个UP主,我越来越觉得自己是个废柴了!

不怕告诉你,我自从喜欢上了这12个UP主,哔哩哔哩成为了我手机上最耗电的软件,几乎每天都会看,可是吧,看的越多,我就越觉得自己是个废柴,唉,老天不公啊,不信你看看…… 间接性踌躇满志,持续性混吃等死,都是因为你们……但是,自己的学习力在慢慢变强,这是不容忽视的,推荐给你们! 都说B站是个宝,可是有人不会挖啊,没事,今天咱挖好的送你一箩筐,首先啊,我在B站上最喜欢看这个家伙的视频了,为啥 ,咱撇...

代码注释如此沙雕,会玩还是你们程序员!

某站后端代码被“开源”,同时刷遍全网的,还有代码里的那些神注释。 我们这才知道,原来程序员个个都是段子手;这么多年来,我们也走过了他们的无数套路… 首先,产品经理,是永远永远吐槽不完的!网友的评论也非常扎心,说看这些代码就像在阅读程序员的日记,每一页都写满了对产品经理的恨。 然后,也要发出直击灵魂的质问:你是尊贵的付费大会员吗? 这不禁让人想起之前某音乐app的穷逼Vip,果然,穷逼在哪里都是...

2020春招面试了10多家大厂,我把问烂了的数据库事务知识点总结了一下

2020年截止目前,我面试了阿里巴巴、腾讯、美团、拼多多、京东、快手等互联网大厂。我发现数据库事务在面试中出现的次数非常多。

前端还能这么玩?(女朋友生日,用前端写了一个好玩的送给了她,高兴坏了)

前端还能这么玩?(女朋友生日,用前端写了一个好玩的送给了她,高兴坏了)

立即提问
相关内容推荐