사업총결산-002

3255 단어
  • 이상 포획 서비스 포획 업무 이상, 사용자 정의BaseException;interface는 업무 이상 및 기타 이상을 포획하여 Exception으로 밑바닥을 파헤친다.
  • 매개 변수 검사는 다른 사람의 코드가 얼마나 믿을 만하다고 생각하지 말고 있어야 한다.있어서는 안 될 검사도 있어야 한다.고려 요소가 전면적이고 논리가 엄밀하다.기록의 유일성은 유일한 색인으로 보장할 수 있다.alter table table_name add unique key key_name (column1_name ,column2_name);
  • int를 적게 사용하면 데이터 변환이 필요한 장면, 예를 들어 VO가 DTO로 바뀌면 DTO는 기초 데이터 형식의 포장 유형을 사용하는 것이 가장 좋다.만약 VO가 Integer를 사용하고 Dto의 대응 유형이 int라면 VO의 Integer가 null일 때 Dto의 상응하는 속성에 값을 부여하는 데 문제가 있을 수 있습니다.
  • // VO Integer age
    vo.age = null;
    // Dto int age
    // ...        
    dto.setAge(vo.getAge());
    

    이것은 상자를 뜯는 문제와 관련이 있습니다.javap -c를 통해class 파일을 역컴파일하면 Integer가 호출된 것을 볼 수 있습니다.intValue().dto.setAge(vo.getAge());집행하다.getage(), 왜냐하면vo.age = null; null.intValue () 는 빈 포인터 이상을 보고합니다.
  • dubbo 인터페이스 사용 방식
  • 1)dubbo로 주해
  •       @EnableDubboConfiguration
    consumer    @DubboConsumer
    producer    @Service(import com.alibaba.dubbo.config.annotation.Service)
    

    참고 자료http://www.jianshu.com/p/06bfa92f2e20
  • 2) Dubbo 메모 없음
  • consumer:
    @Bean("ConsumerInterface")
    public ReferenceBean consumerInterface() {
            ReferenceBean referenceBean = new ReferenceBean<>();
            referenceBean.setInterface(ConsumerInterface.class);
            referenceBean.setCheck(false);
            referenceBean.setVersion("1.0.0");
            referenceBean.setTimeout(5000);
            return referenceBean;
    }
    

    producer:
    @Resource
    private ProducerInterface producerInterfaceImpl;
    @Bean
    public ServiceBean producerInterface() {
            ServiceBean serviceBean = new ServiceBean<>();
            serviceBean.setInterface(ProducerInterface.class);
            serviceBean.setRef(producerInterfaceImpl);
            referenceBean.setVersion("1.0.0");
            referenceBean.setTimeout(5000);
            return serviceBean;
    }
    
  • 스레드를 직접 사용하지 마십시오
  • 알리바바 자바 개발 안내서:
    스레드 탱크를 사용하는 장점은 스레드를 창설하고 소각하는 데 걸리는 시간과 시스템 자원의 비용을 줄이고 자원 부족 문제를 해결하는 것이다.만약 스레드 탱크를 사용하지 않는다면 시스템이 대량의 같은 종류의 스레드를 만들어서 메모리를 소모하거나 과도하게 전환하는 문제를 초래할 수 있다.스레드 풀은 Executors를 사용하여 만들 수 없고 ThreadPoolExecutor를 통해 자원 소모의 위험을 피합니다.Executors가 되돌아오는 스레드 탱크 대상의 폐단은 다음과 같다. 1) FixedThreadPool과 SingleThreadPool: 허용된 요청 대기열의 길이는 Integer이다.MAX_VALUE, 많은 요청이 쌓여서 OOM이 발생할 수 있습니다.2) CachedThreadPool과 ScheduledThreadPool: 허용되는 생성 스레드 수는 Integer입니다.MAX_VALUE 는 대량의 스레드를 생성하여 OOM을 만들 수 있습니다.
    직접 쓰기 스레드 풀 도구 클래스http://note.youdao.com/noteshare?id=30ca03fa9d7f9772e5e8a811089a1fa6
  • Autowired Autowired annotation is not supported on static fields Autowired와 Resource의 차이점에 대해 Autowired는 유형별로 어셈블되며, Resource는 기본적으로 속성명별로 어셈블됨
  • HashMap을 초기화할 때 크기를 지정하는 이유는 무엇입니까?resize의 효율 저하 방지
  • 주석 발표 문서로 다른 사람들이 코드 기능을 이해하기 편리하다.방법의 주석은 기능, 입참, 반참, 던질 수 있는 이상을 설명한다.
  • /**
     * @author: Ali
     * @date: 2017/12/15
     * @since: java 1.8
     * description: XXXXXX
     * 
     * @param someParam     
     * @return returnParam     
     * @throws XXXException XXX  
     */
    
  • maven 라이브러리를 찾을 수 없습니다. 로컬 해당 창고를 삭제하고 다시 import
  • 좋은 웹페이지 즐겨찾기