自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(5)
  • 资源 (1)
  • 收藏
  • 关注

原创 mybatis generator生成实体时,出现重复

java项目 中使用 org.mybatis.generator生成mysql数据库实体时,由于mysql 数据库中存在多个库,如果库中出现重复表时,会出现生成的实体代码出现重复问题,原因是数据库生成实体时会扫描所有的库,解决方法是 1、jdbc:mysql://localhost:3306/table?useUnicode=true&characterEncoding=UTF...

2019-07-23 13:54:28 1369 1

原创 idea pom.xml 修改第三方包版本后,发布不生效

1、idea 清理缓存无效2、清理class,重现编译无效3、maven 仓库中包已经下载最后发现发布的项目lib下午此包,原因是发布项目的lib下引用包未改变解决办法办法是重新引入一下,按理说idea 应该可以自动调整,求大神指点为什么没改变...

2019-05-13 17:59:47 2883 1

原创 Filebeat直接往ES中传输数据中文乱码

在filebeat.yml 中paths 上加 encoding: GB2312如图

2019-04-24 17:01:56 3655

原创 idea spring源码导入遇到的问题

首先说下我的spring 源码版本是5.1.6 遇到的问题是An exception occurred applying plugin request [id: 'org.jetbrains.dokka', version: '0.9.17']困扰了一整天最终在网上找到了解决方案,1、修改maven 仓库和classpathbuildscript { repositori...

2019-04-24 10:04:19 3485

原创 ORCALE 递归 与where条件

在数据库查询中 有时候会用到递归查询START WITH  CONNECT BY ,这里遇到一个坑爹的事情记录一下,如果递归查询设计多表或者多个条件的情况,有时候会加where 条件比如,SELECT  * FROM TABLE where state=0START WITH parent = '父'CONNECT BY PRIOR son = parent ;state 0代...

2018-12-05 11:57:02 1526

标题左右滑动

标题左右滑动,标题下划线有滑动效果 /* * @author http://blog.csdn.net/singwhatiwanna */ package com.ryg.fragment.ui; import java.lang.reflect.Constructor; import java.util.ArrayList; import java.util.List; import android.content.Context; import android.content.Intent; import android.os.Bundle; import android.os.Message; import android.os.Parcel; import android.os.Parcelable; import android.support.v4.app.Fragment; import android.support.v4.app.FragmentActivity; import android.support.v4.app.FragmentManager; import android.support.v4.app.FragmentPagerAdapter; import android.support.v4.view.ViewPager; import android.support.v4.view.ViewPager.OnPageChangeListener; import android.util.Log; import android.view.ViewGroup; import android.view.Window; import com.ryg.indicatorfragment.R; @SuppressWarnings("static-access") public abstract class IndicatorFragmentActivity extends FragmentActivity implements OnPageChangeListener { private static final String TAG = "DxFragmentActivity"; public static final String EXTRA_TAB = "tab"; public static final String EXTRA_QUIT = "extra.quit"; protected int mCurrentTab = 0; protected int mLastTab = -1; //存放选项卡信息的列表 protected ArrayList<TabInfo> mTabs = new ArrayList<TabInfo>(); //viewpager adapter protected MyAdapter myAdapter = null; //viewpager protected ViewPager mPager; //选项卡控件 protected TitleIndicator mIndicator; public TitleIndicator getIndicator() { return mIndicator; } public class MyAdapter extends FragmentPagerAdapter { ArrayList<TabInfo> tabs = null; Context context = null; public MyAdapter(Context context, FragmentManager fm, ArrayList<TabInfo> tabs) { super(fm); this.tabs = tabs; this.context = context; } @Override public Fragment getItem(int pos) { Fragment fragment = null; if (tabs != null && pos < tabs.size()) { TabInfo tab = tabs.get(pos); if (tab == null) return null; fragment = tab.createFragment(); } return fragment; } @Override public int getItemPosition(Object object) { return POSITION_NONE; } @Override public int getCount() { if (tabs != null && tabs.size() > 0) return tabs.size(); return 0; } @Override public Object instantiateItem(ViewGroup container, int position) { TabInfo tab = tabs.get(position); Fragment fragment = (Fragment) super.instantiateItem(container, position); tab.fragment = fragment; return fragment; } } @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); requestWindowFeature(Window.FEATURE_NO_TITLE); setContentView(getMainViewResId()); initViews(); //设置viewpager内部页面之间的间距 mPager.setPageMargin(getResources().getDimensionPixelSize(R.dimen.page_margin_width)); //设置viewpager内部页面间距的drawable mPager.setPageMarginDrawable(R.color.page_viewer_margin_color); } @Override protected void onDestroy() { mTabs.clear(); mTabs = null; myAdapter.notifyDataSetChanged(); myAdapter = null; mPager.setAdapter(null); mPager = null; mIndicator = null; super.onDestroy(); } private final void initViews() { // 这里初始化界面 mCurrentTab = supplyTabs(mTabs); Intent intent = getIntent(); if (intent != null) { mCurrentTab = intent.getIntExtra(EXTRA_TAB, mCurrentTab); } Log.d(TAG, "mTabs.size() == " + mTabs.size() + ", cur: " + mCurrentTab); myAdapter = new MyAdapter(this, getSupportFragmentManager(), mTabs); mPager = (ViewPager) findViewById(R.id.pager); mPager.setAdapter(myAdapter); mPager.setOnPageChangeListener(this); mPager.setOffscreenPageLimit(mTabs.size()); mIndicator = (TitleIndicator) findViewById(R.id.pagerindicator); mIndicator.init(mCurrentTab, mTabs, mPager); mPager.setCurrentItem(mCurrentTab); mLastTab = mCurrentTab; } /** * 添加一个选项卡 * @param tab */ public void addTabInfo(TabInfo tab) { mTabs.add(tab); myAdapter.notifyDataSetChanged(); } /** * 从列表添加选项卡 * @param tabs */ public void addTabInfos(ArrayList<TabInfo> tabs) { mTabs.addAll(tabs); myAdapter.notifyDataSetChanged(); } @Override public void onPageScrolled(int position, float positionOffset, int positionOffsetPixels) { mIndicator.onScrolled((mPager.getWidth() + mPager.getPageMargin()) * position + positionOffsetPixels); } @Override public void onPageSelected(int position) { mIndicator.onSwitched(position); mCurrentTab = position; } @Override public void onPageScrollStateChanged(int state) { if (state == ViewPager.SCROLL_STATE_IDLE) { mLastTab = mCurrentTab; } } protected TabInfo getFragmentById(int tabId) { if (mTabs == null) return null; for (int index = 0, count = mTabs.size(); index < count; index++) { TabInfo tab = mTabs.get(index); if (tab.getId() == tabId) { return tab; } } return null; } /** * 跳转到任意选项卡 * @param tabId 选项卡下标 */ public void navigate(int tabId) { for (int index = 0, count = mTabs.size(); index < count; index++) { if (mTabs.get(index).getId() == tabId) { mPager.setCurrentItem(index); } } } @Override public void onBackPressed() { finish(); } /** * 返回layout id * @return layout id */ protected int getMainViewResId() { return R.layout.titled_fragment_tab_activity; } /** * 在这里提供要显示的选项卡数据 */ protected abstract int supplyTabs(List<TabInfo> tabs); @Override protected void onSaveInstanceState(Bundle outState) { // for fix a known issue in support library // https://code.google.com/p/android/issues/detail?id=19917 outState.putString("WORKAROUND_FOR_BUG_19917_KEY", "WORKAROUND_FOR_BUG_19917_VALUE"); super.onSaveInstanceState(outState); } /** * 单个选项卡类,每个选项卡包含名字,图标以及提示(可选,默认不显示) */ public static class TabInfo implements Parcelable { private int id; private int icon; private String name = null; public boolean hasTips = false; public Fragment fragment = null; public boolean notifyChange = false; @SuppressWarnings("rawtypes") public Class fragmentClass = null; @SuppressWarnings("rawtypes") public TabInfo(int id, String name, Class clazz) { this(id, name, 0, clazz); } @SuppressWarnings("rawtypes") public TabInfo(int id, String name, boolean hasTips, Class clazz) { this(id, name, 0, clazz); this.hasTips = hasTips; } @SuppressWarnings("rawtypes") public TabInfo(int id, String name, int iconid, Class clazz) { super(); this.name = name; this.id = id; icon = iconid; fragmentClass = clazz; } public TabInfo(Parcel p) { this.id = p.readInt(); this.name = p.readString(); this.icon = p.readInt(); this.notifyChange = p.readInt() == 1; } public int getId() { return id; } public void setId(int id) { this.id = id; } public String getName() { return name; } public void setName(String name) { this.name = name; } public void setIcon(int iconid) { icon = iconid; } public int getIcon() { return icon; } @SuppressWarnings({ "rawtypes", "unchecked" }) public Fragment createFragment() { if (fragment == null) { Constructor constructor; try { constructor = fragmentClass.getConstructor(new Class[0]); fragment = (Fragment) constructor.newInstance(new Object[0]); } catch (Exception e) { e.printStackTrace(); } } return fragment; } public static final Parcelable.Creator<TabInfo> CREATOR = new Parcelable.Creator<TabInfo>() { public TabInfo createFromParcel(Parcel p) { return new TabInfo(p); } public TabInfo[] newArray(int size) { return new TabInfo[size]; } }; @Override public int describeContents() { return 0; } @Override public void writeToParcel(Parcel p, int flags) { p.writeInt(id); p.writeString(name); p.writeInt(icon); p.writeInt(notifyChange ? 1 : 0); } } }

2015-01-15

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除